python 爬虫-京东用户评论数据和用户评分
2018-04-04 11:23
696 查看
python 爬虫-京东用户评论数据和用户评分
在京东页面查找(例如:oppo r15),选择第一个商品点击进入。点击第一个评论页面:
点击第二个评论页面:
第三个评论页面:
发现第二页和第三页的网址是一样的,我们可以推测,访问第一页评论的网址也可以和2,3一样。
我们再次点击第一页:
发现确实如此
对于这种网站要爬取信息是比较难的(评论翻页,但是网址不变),可能评论信息是异步加载,需要抓包找到位置。
我们按下F12,进入浏览器的开发者模式(我用的是谷歌浏览器),选择其中的几个选项。
上面有很多信息,我们需要找到评论数据。之后点击禁止符号,意思是clear清除原有信息
选择评论的第二页:下面出现了一个文件
这就是我们需要的评论数据和网页地址
https://sclub.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv1&productId=6790503&score=0&sortType=5&page=1&pageSize=10&isShadowSku=6560154&rid=0&fold=1
复制到浏览器看到评论数据
进入页面点击第3个页面:
https://sclub.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv1&productId=6790503&score=0&sortType=5&page=2&pageSize=10&isShadowSku=6560154&rid=0&fold=1
观察两个页面的规律:只有page参数在变化
https://sclub.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv1&productId=6790503&score=0&sortType=5&page=1&pageSize=10&isShadowSku=6560154&rid=0&fold=1
https://sclub.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv1&productId=6790503&score=0&sortType=5&page=2&pageSize=10&isShadowSku=6560154&rid=0&fold=1
改变:page=3复制到浏览器参看
https://sclub.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv1&productId=6790503&score=0&sortType=5&page=3&pageSize=10&isShadowSku=6560154&rid=0&fold=1
现在就找到了需要爬虫的评论数据,观察一个页面信息
从数据可以看到里面的评论数据和用户评分。这是我们需要的数据了。
实验代码如下:
import os import re import pandas as pd import requests if os.path.exists('comment.txt'): os.remove('comment.txt') else: f = open('comment.txt','a') count = 0 url = 'https://sclub.jd.com/comment/productPageComments.action?callback=\ fetchJSON_comment98vv1&productId=6790503&score=0&sortType=5&page=' url2 = '&pageSize=10&isShadowSku=6560154&rid=0&fold=1' for i in range(0,10):#输入需要爬虫的页面数 try: html = requests.get(url + str(i) + url2) html = html.text #使用正则提取评论信息 content1 = re.findall(r'"guid".*?,"content":(.*?),',html) #对提取的评论信息进行去重 content2=[] temp = '' for c in content1: if temp != c: content2.append(c) temp = c #使用正则提取score字段信息 score = re.findall(r'"referenceImage".*?,"score":(.*?),',html) for s,c in zip(score,content2): count += 1 c = c.replace('\\n','') f.write(str(count)+'\t' + str(s)+'\t' + c) f.write('\n') except: print('爬取第'+str(i)+'页出现问题') # continue break f.close()
参考: https://ask.hellobi.com/blog/wangdawei/10230 http://bluewhale.cc/2016-12-15/use-python-to-capture-and-analyze-jingdong-product-reviews-data.html
相关文章推荐
- [置顶] [爬虫]使用python抓取京东全站数据(商品,店铺,分类,评论)
- python 爬虫 豆瓣 评论及评分
- Python抓取京东图书评论数据
- [Python爬虫] Selenium爬取新浪微博客户端用户信息、热点话题及评论 (上)
- 利用python爬虫技术获取每天每场的每位球员NBA数据以及每日范特西评分
- python制作爬虫爬取京东商品评论教程
- python爬虫系列之爬京东手机数据
- Python爬虫股票评论,snowNLP简单分析股民用户情绪(草稿)
- 用Python对用户评论典型意见进行数据挖掘
- python爬取携程和蚂蜂窝的景点评论数据\python爬取携程评论数据\python旅游网站评论数据爬虫
- Python爬虫爬取京东内存条数据并作简单分析
- Python开源爬虫项目代码:抓取淘宝、京东、QQ、知网数据--转
- [python和大数据-1]利用爬虫登录知乎进行BFS搜索抓取用户信息本地mysql分析【PART1】
- 教你用Python爬虫股票评论,简单分析股民用户情绪
- python3下几个淘宝、天猫、京东爬虫实例。(价格、销量、评论等)
- 【开发日记】马桶识别之数据收集,通过Python抓取京东评论图片
- Python爬虫(三)——对豆瓣图书各模块评论数与评分图形化分析
- 用Python计算MovieLens 100k数据集中男性女性用户评分的标准差