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