python如何爬取网页中js的json数据
要爬取网页中的js的json数据,可以使用Python的requests库和正则表达式或者BeautifulSoup库。
首先,使用requests库发送HTTP请求获取网页的内容:
import requests
url = "https://example.com"
response = requests.get(url)
html = response.text
接下来,使用正则表达式或者BeautifulSoup库从网页的内容中提取出json数据。
使用正则表达式的方法:
import re
# 使用正则表达式匹配json数据
pattern = re.compile(r'var data = (\{.*?\});')
match = pattern.search(html)
if match:
json_data = match.group(1)
print(json_data)
使用BeautifulSoup库的方法:
from bs4 import BeautifulSoup
soup = BeautifulSoup(html, 'html.parser')
# 使用BeautifulSoup提取json数据
script_tag = soup.find('script', text=re.compile(r'var data = (\{.*?\});'))
if script_tag:
json_data = re.search(r'var data = (\{.*?\});', script_tag.string).group(1)
print(json_data)
以上代码中,使用正则表达式或者BeautifulSoup从网页的内容中找到包含json数据的script标签,并提取出json数据。
最后,可以使用json库解析json数据:
import json
data = json.loads(json_data)
print(data)
这样就可以将网页中的js的json数据爬取出来并解析成Python的字典或列表。
原文地址: https://www.cveoy.top/t/topic/jbNM 著作权归作者所有。请勿转载和采集!