我想使用python 3.5抓取网站(谷歌应用商店评论) 所以我得到了关于使用ajax的答案......
url = "https://play.google.com/store/getreviews?authuser=0"
param = {'reviewType': '0',
'pageNum': '1',
'id':'com.venticake.retrica',
'reviewSortOrder':'4',
'xhr':'1',
'token':'ZLqR3TmB64y6koyq8uj1tqqiQ4k:14191636750027',
'hl':'ko'}
r = requests.post(url, data=param)
d = json.loads(r.text)
喜欢这个
但响应是
')]}\'\n\n[["ecr",1," \\u003cdiv class\\u003d\\"single-review\\" tabindex\\u003d\\"0\\"\\u003e \\u003cspan\\u003e \\u003cspan
如何将其制作成json或结构化数据....
谢谢你们的时间
答案 0 :(得分:0)
您可以使用json()方法转换python请求的响应。像这样。
url = "https://play.google.com/store/getreviews?authuser=0"
param = {'reviewType': '0',
'pageNum': '1',
'id':'com.venticake.retrica',
'reviewSortOrder':'4',
'xhr':'1',
'token':'ZLqR3TmB64y6koyq8uj1tqqiQ4k:14191636750027',
'hl':'ko'}
response = requests.post(url, data=param)
x = response.json()
这会将响应序列化为json数据。
更新
我测试了脚本并发现了以下响应问题。
u")]}'\n\n"
。验证print response.text[:6]
'charset': 'utf-8'
,也无法通过响应将其编码为ascii。我认为这些是您无法将响应加载为json数据的原因。