不同的网站有着不同的反爬虫策略,其对爬虫的限制也不同。一般可分为以下三类:
1、设置不反回网页或延迟返回时间
传统的
反爬虫方法是不返回网页,即爬虫将请求发送到相应的网址后,网站返回404页面,表示服务器无法正常提供信息,或者服务器没有响应;网站也可能长时间不返回数据,这意味着爬虫已被封杀。
2、返回的网页并非目标网页
除了不返回页面之外,还有一些爬虫程序返回非目标页面,也就是网站说,该网站返回虚假数据,例如当返回空白页面或爬取多个页面时返回同一页面。如果你的爬虫运行平稳,你会很高兴做别的事情。搜索半小时后,你发现每个页面搜索结果都是一样的,这就是获取假网站。
例如,到哪儿网的机票价格页面,在网上标注的价格与html源代码竟然不一样。例如,在网上标注的机票价格是530元,而html源代码中的机票价格却是538元。除了去哪儿网,猫眼电影和斗鱼直播中也采用了这种方法,爬下的数字和真实数字是不同的。
3、增加访问难度。
网站也会通过增加获取数据的难度来防爬虫,一般登录就可以看到数据,并设置验证码。为了限制爬虫,不管你是不是真正的用户,网站可能会要求你登录并输入要访问的验证码。例如,12306为了限制自动抢票,采用了严格的验证码功能,要求用户在8张图片中正确选择。
这三种情况在爬虫界是很常见的。爬行动物为了顺利地工作,需要根据不同的实际情况制定不同的防爬行策略。