快捷搜索:  汽车  科技

python爬取商品案例(如何爬取京东商品评论并进行数据存储)

python爬取商品案例(如何爬取京东商品评论并进行数据存储)找到这样的关系之后,代码实现。productId:商品idpage:第几页pageSize:每页多少条

1、首先我们进入商品详情页,打开开发者模式network,点击评论

python爬取商品案例(如何爬取京东商品评论并进行数据存储)(1)

这里面会有很多内容,评论内容也包含在其中,找到这个 productPageComments

完整的链接:https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100012032157&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1

解释一下:

productId:商品id

page:第几页

pageSize:每页多少条

找到这样的关系之后,代码实现。

import urllib.request import json import time # ======》爬取评论信息《=======# end_page = int(input('请输入爬取的结束页码:')) for i in range(0 end_page 1): print('第%s页开始爬取------' % (i 1)) url = 'https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100004770259&score=0&sortType=5&page={}&pageSize=10&isShadowSku=0&fold=1 ' url = url.format(i) headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/76.0.3809.100 Safari/537.36' 'Referer': 'https://item.jd.com/100004770259.html' } request = urllib.request.Request(url=url headers=headers) content = urllib.request.urlopen(request).read().decode('gbk') content = content.strip('fetchJSON_comment98vv385();') obj = json.loads(content) comments = obj['comments'] fp = open('京东.txt' 'a' encoding='utf8') for comment in comments: # 评论时间 creationTime = comment['creationTime'] # 评论人 nickname = comment['nickname'] # 评论内容 contents = comment['content'] item = { '评论时间': creationTime '用户': nickname '评论内容': contents } string = str(item) fp.write(string '\n') print('第%s页完成----------' % (i 1)) time.sleep(4) fp.close()

猜您喜欢: