今天经过爬虫数据进行分析,一块儿来看看网易严选商品评论的获取和分析。程序员
声明:这是一篇超级严肃的技术文章,请本着学习交流的态度阅读,谢谢!mongodb
!数据库
![]()
评论分析json
进入到网易严选官网,搜索“文胸”后,先随便点进一个商品。app
在商品页面,打开 Chrome 的控制台,切换至 Network 页,再把商品页面切换到评价标签下,选择一个评论文字,如“薄款、穿着温馨、满意”,在 Network 中搜索。学习
能够发现,评论文字是经过 listByItemByTag.json 传递过来的,点击进入该请求,并拷贝出该请求的 URL:网站
https://you.163.com/xhr/comment/listByItemByTag.json?csrf_token=060f4782bf9fda38128cfaeafb661f8c&__timestamp=1571106038283&itemId=1616018&tag=%E5%85%A8%E9%83%A8&size=20&page=1&orderBy=0&oldItemTag=%E5%85%A8%E9%83%A8&oldItemOrderBy=0&tagChanged=0url
将该 URL 放入 Postman 中,逐个尝试 url query params,最后可以发现,只需保留 itemId 和 page 两个请求参数便可。spa
请求返回的是一个 JSON 格式的数据,下面就是分析该 JSON 数据了。.net
不难发现,全部的评论数据都存储在 commentList 中,咱们只需保存该数据便可。
下面就是如何获取 itemId 的信息了,这个是产品的 ID,咱们回到网易严选首页,继续分析。
产品 ID 获取
当咱们在搜索框中输入关键字进行搜索的时候,一样可以发如今 Network 中有不少请求,此时能够观察各个请求,经过请求文件的名称(此处须要一些经验,守规矩的程序员都不会乱起名字),咱们能够定位到搜索时展现搜索结果的请求。
搜索通常都是 search,因此咱们就锁定了这个 search.json 的请求。一样把请求 URL 拷贝到 Postman 中,逐个验证传参,最后保留 page 和 keyword 两个参数便可。
该请求返回的数据较多,仍是须要耐心的分析数据,也可以发现,在 result->data->directly->searcherResult->result 下面的 id 值,即为咱们要获取的产品 ID。
以上,咱们基本完成了前期的分析工做,下面开始代码的编写。
获取产品 ID
我这里是获取了 page 为 1 的产品 ID,下面就是经过产品 ID 来获取不一样产品下的评论信息。
经过前面的分析,咱们能够知道,评论信息都是以下形式的,对这种形式的信息,咱们能够很方便地存储进入 MongoDB,而后再慢慢分析数据里的内容。
对于 MongoDB,咱们既能够本身搭建,也可使用网上免费的服务。在这里我介绍一个免费的 MongoDB 服务网站:mlab,使用很简单,就不过多介绍使用过程了。
数据库有了,下面就是把数据保存进去了。
最后爬取完成以后,总共是七千多条数据,下面就能够根据我的须要作一些分析了。
爬取的数据 MongoDB 连接
conn = MongoClient("mongodb://%s:%s@ds149974.mlab.com:49974/you163" % ('you163', 'you163'))
db = conn.you163
mongo_collection = db.you163
下面就到了激动人心的时刻了,一探妹子偏好!
先来看看妹子们偏好的颜色
能够看出,黑色是遥遥领先的哦,这里你要作到心中有数!
再经过饼状图来观察下不一样颜色的占比状况
没有问题,75B 就是大多数妹子的尺寸了
若是你对这种罩杯尺寸没有研究的话,没关系,贴心的我给你准备了对照表,拿走不谢
最后咱们再来看看妹子们对于商品的评价状况
就星级评价上来看,大多数都是五星好评,毕竟打着“严选”的名号,质量是必须有保证的。
再来看看在评论区,妹子最喜欢用什么词语来描述呢
舒服、很舒服,很是舒服;满意、很满意,很是满意。