天猫商品评论爬虫攻略【基于scrapy框架】(内附词云图绘制代码)

本文介绍了使用Python Scrapy框架爬取天猫商品评论的详细过程,包括设置反爬策略、定义爬虫规则、解析JSON内容及绘制词云图。在面对阿里云的反爬机制时,作者通过分析Firefox浏览器的cookies找到了解决办法,成功获取了1992条数据,但也发现数据重复问题。
摘要由CSDN通过智能技术生成

简介

近日因为公司业务需要,领导要求我批量获取一款天猫商城上的商品链接下的评论。虽然我已有超过一年的爬虫实战经验,但是一想到我即将面对的是“阿里云”这一BUG级怪物,头皮不由自主地发麻了。但是秉着“万物皆可爬”的信念,我还是硬着头皮上了。

网页展示

我需要获取的网页链接为天猫商城
先来看看评论区的模样吧。

图1
正如大家所熟知的,评论栏目十分工整,所有评论都整齐地摆放在了网页当中,而页面末尾还有翻页按钮。一切还似乎是简单的模样。
然而,爬虫界里有一句话可谓是“至理箴言”——你看得到不一定你就能爬得到。这不,当我打开浏览器监听器时就发现了天猫商品的网页采取的都是异步请求方式获得的,评论区的都内容都停放在了类似于
https://rate.tmall.com/list_detail_rate.htm?itemId=537259015354&spuId=694941313&sellerId=2386968451&order=3&currentPage=2&append=0&content=1&tagId=&posi=&picture=&groupId=&ua=098%23E1hvS9vovLIvUvCkvvvvvjiPRFzpsjnmRLFw0jrCPmPZlj3CnLMpljYWn2LwQj3bRphvCvvvvvmCvpvZz2staosNznswUGrfYgsw1aAv7IVrvpvEvCB%2FvNsGv2s22QhvCvvvMMGCvpvVvmvvvhCvKphv8vvvvvCvpvvvvvv2vhCvCjQvvvWvphvW9pvvvQCvpvs9vvv2vhCv2RmEvpvVmvvC9jamuphvmvvv9bcWRGhImphvLvCbXvvjna21Q8oaWLEc34z%2BFfmtEpcUTUoXKFwFxT7YK4vTHkGVqwzaiLu18vmYiR0n%2BbyDCw2IAXZTKFEw9Exrz8TJEcq9afknnbvtvpvhvvvvv8wCvvpvvUmm3QhvCvvhvvmrvpvpjvkJ9wjCvmvIFfwznHVt6OhCvvswMHna3nMwznQY3DItvpvhvvvvvUhCvvswNHBwEaMwzns%2FblItvpvhvvvvv86Cvvyv2h7n1GwvzWy%3D&needFold=0&_ksTS=1561438169812_1139&callback=jsonp1140
这样的链接当中。
可以注意到,链接当中包含着一个currentPage字段,只要通过更改currentPage的值即可实现翻页的效果。

在这里插入图片描述
上图为评论区内容的停放方式。实话说,到目前为止,我还没有体会到阿里云的强大之处到底在哪,根据个人经验,我仍然觉得只要听过递归算法实现翻页、逐个获取就可以完成老板的任务。然而,不到最后一刻真的不能轻易放松啊。

阿里云的反爬策略

通常来讲,如果网站想要反爬,它们通常会从访问者的访问频率入手,只要识别到某个IP发出的请求在某一时间段内极度频繁网站便会认定(如果真的需要反爬的话)该访问者为不友好客户,将该IP封锁请求一段时间。
然而阿里云的高明之处在于它压根不需要设置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值