代码的话已经发布了
链接:https://download.csdn.net/download/Npe_xl_violet/85330469
第一章先讲讲哪里来的数据吧:
在phone.xlsx中存放了我需要的手机,以及他们的产品id
这是我手动输入的,就是花的时间长了点
这些都是从京东的网页爬取的,产品id的话,随便进入一个网页就能在url中看到
如图:
又或者说,直接搜索手机,右键检查
这也是我们需要的产品id
最后呢,我这个excel文件内一共有60部手机
第二步:找到手机评论,如何去爬
这需要一点前端知识,我只讲操作
1.随便进入一个产品的详细网页,做个比方就是三星s22
还是右键检查,然后点击我圈中的网络
然后因为打开的比较晚,有些包在我们打开之前就已经传送来了,需要刷新
之后这里会多出来超多文件
然后,一点要点开商品评论,这是我们要爬的内容
接下来在检查里,一项项找到类似我们需要的东西,点击它,如图
看那个网址,就很想我们要的东西,复制出来,用浏览器打开
看吧,这就是我们需要的json文件,里面有我们要的评论
观察这个url,有个属性是productId,那里就是拿来放我们Phone.xlsx的那些id的
还有一些其他的属性
第三步:爬虫代码
url = 'https://sclub.jd.com/comment/productPageComments.action?&productId='+ str(int(itemid)) +'&score=0&sortType=5&page='+ str(page) +'&pageSize=10&isShadowSku=0&fold=1'
这是在我源代码中的url代码
用python request就可以爬取
多的我不说了,这些属性我扯一嘴,page是页数,要爬多少页就写个for循环
pagesize看到名字也懂了吧
score是用户打分,0是所有评论,1-5分,哪个算好评我也忘了,自己去试试吧
我放一下爬虫的代码,很短,从文档里摘出来cachejd.py
def start(itemid, page):
# 获取URL
#score 评价等级 page=0 第一页 producitid 商品类别
url = 'https://sclub.jd.com/comment/productPageComments.action?&productId='+ str(int(itemid)) +'&score=0&sortType=5&page='+ str(page) +'&pageSize=10&isShadowSku=0&fold=1'
headers= {
"User-Agent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Mobile Safari/537.36"
}
time.sleep(2)
test = requests.get(url=url, headers= headers).json()
temp = json.dumps(test)
data = json.loads(temp)
return data
至于怎么写入text或者excel,就自己研究研究,
也可以去我放出来的代码下载去看。
链接:https://download.csdn.net/download/Npe_xl_violet/85330469



