采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
请问老师:我现在爬阿里巴巴的商铺url的移动电话字段,这个字段是需要登录后才能访问,我就把多个登录后的cookie加入代码中,写个随机数每次抽。然而爬不久就被阿里巴巴识别到,账户异常要求输入验证码。于是我就采用了云打码破解。但问题是阿里巴巴又做了验证码次数限制。post验证码过多了就不给再post了。请问老师这个反爬如何破解
阿里的反爬应该算是国内最严格的网站之一了, 但是做过后端开发的话就能明白, 服务器判断你无非也就是那几种方式, 通过ip限制, 通过cookie限制,
这里阿里需要登录就是通过cookie限制, 也就是通过账号限制, 我看到你这里实际上用了多个账号的cookie来爬取了, 这里就有一个问题就是如果账号不多, 即使随机切换也有可能对每个账号来说还是请求频繁了, 而且阿里也极有可能会通过一个ip地址是否不停的有多个cookie发送过来, 所以你可以再申请多个账号和随机切换ip代理的方式结合来爬取, 而且也需要限速爬取, 不要爬取的过于频繁, 因为如果阿里一旦后台的逻辑是讲cookie和ip绑定来判断你随机切换ip的方式就无效了, 限速才是良性的爬虫, 不要过度的追求爬虫速度, 对于某一个网站来说有个好的节奏去爬取才是长期爬虫的关键
限速就有一个问题了,cookies是有时间限制的,限速太慢了爬不到多少数据,cookie就变成失效。
过期后可以重新获取cookie,然后替换掉原有cookie。这个肯定不是问题的关键
自动更新cookie,这样子就集成selenium到scrapy中了,每次都有启动selenium,然后把selenium的get_cookies()把cookie拿出来。再组装好付给requests请求。
这就是阿里巴巴的post验证码限制,ua加密的
登录后可查看更多问答,登录/注册
带你彻底掌握Scrapy,用Django+Elasticsearch搭建搜索引擎
4.7k 30
2.5k 18
1.1k 18
1.3k 15
2.7k 15