python爬取商品评论_python爬取京东评论(一)

点击——>要爬取网址

作为一个爬虫小白解决问题是十分蛋疼的(Φ皿Φ),就这几行代码,我折磨了一下午,然后我发现,学习代码最大的难题是学习资源获取的途径并不是代码本身,只要学,任何人都能学会

1.先到达页面打开开发者模式(F12),点击商品评论,我们随便的复制一些字,去源码里搜搜发现没有这句话,就知道是动态页面了,该去找json文件了

d4bbb6267e59

开发者选项

2.我们进入Network,去filter里面打comment,一般评论关键词就这个,然后去翻里面的请求,随便翻翻就找到了,也不是瞎翻,重点是js请求

d4bbb6267e59

找评论

3.知道了这个是相应的请求了,去headers弄url,去看看怎么样

d4bbb6267e59

复制url

d4bbb6267e59

看到评论了

4下面开始搞代码

import requests

import json

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'}

url = 'https://sclub.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv12345&productId=19523497981&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1'

res = requests.get(url,headers=headers)

jd=json.loads(res.text.lstrip('fetchJSON_comment98vv12345(').rstrip(');'))

#上面这行真是让我蛋疼半天的元首,记住要去掉无关字符

com_list=jd['comments']

for i in com_list:

print(i['content'])

心路历程:我之前爬过几个动态页面没遇到过这种问题,一开始我没去掉,一直报这种错

E:\python3\python.exe F:/pycharm/untitled/cpu.py

Traceback (most recent call last):

File "F:/pycharm/untitled/cpu.py", line 12, in

sd = json.loads(res)

File "E:\python3\lib\json\__init__.py", line 354, in loads

return _default_decoder.decode(s)

File "E:\python3\lib\json\decoder.py", line 339, in decode

obj, end = self.raw_decode(s, idx=_w(s, 0).end())

File "E:\python3\lib\json\decoder.py", line 357, in raw_decode

raise JSONDecodeError("Expecting value", s, err.value) from None

json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

我就去百度狂搜,千奇百怪各种回答,我还痴呆的去一个个认真对照,最后我反其道而寻之!看看其它人怎么爬的,又是一番波折,不少上古级或大神级代码,不想看,最后刮半天找到这个解决之道

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值