爬虫初学——爬取京东商品的评论(一)

时间:2024-03-22 13:29:21

最近,初学了一些爬虫的知识,然后刚好被老师要求去爬取一些评论数据(淘宝、京东等),来进行深度学习识别虚假评论。然后咋办咧,东搜搜西搜搜,看有没有什么好的办法。毕竟之前可是被反爬机制很强的网站弄得毫无头绪。
在此,主要感谢简书的两位博主的博客,让我能够入门。
1、第一位博主,给了一套非常浅显易懂的爬虫入门教程,原来爬虫基础可以这么简单,而且还更新了哦。传送门
2、第二位博主,则是,让我找到了爬取京东评论的思绪。传送门
一、获取评论所在的网页url
1、进入京东的某一个商品,找到评论处
爬虫初学——爬取京东商品的评论(一)
2、右键——检查——Network:
爬虫初学——爬取京东商品的评论(一)
3、点击左边网页评论中的“全部”评论,也就是刷新一下此处网页,这样network总就会显示请求的url了(最好点击一下js,这样不必看那么多繁琐的内容),下面得到了一个url:
爬虫初学——爬取京东商品的评论(一)
"4、open in new tab",可以打开浏览器查看此url内容: 你会发现想要的评论就在这里面,但是这是json实现的。只不过我不会解析json怎么办???我们想要的是数据,虽然对结构看不懂,只不过这文字可是连在一起的,看的见的文字,我们可以用正则表达式啊。
爬虫初学——爬取京东商品的评论(一)
5、分析一下url,我们想要的可不是这单页的10条评论,所以点击下一页这评论是怎么变得咧,通过对别多条url,我们可以得到结论:
例子:
https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100004404912&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1
分析一:score=0: 代表“全部”评论, 差评是“score=1”,中评是score=2,好评是score=3…
分析二:page=0:代表的是评论的页数,当你点击第二页评论,url此处会变成"page=1",以此类推。
真正有效的url部分(省略尾端一部分):https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100004404912&score=0&sortType=5&page=0&pageSize=10

综上:我们就可以按我们的想法改变url了。要爬取多页评论,写个循环,让"page="的值递增就好了。如果对“好评”“差评”有特殊需求,更改“score”就好了。

**

爬虫初学——爬取京东商品的评论(二)

**