有很多对网络爬虫技术感兴趣的小伙伴,相信在做爬虫的时候,都会遇到一些限制,比如说网站的反爬虫是比较常见的。那么,我们可以怎么来处理呢?
1、验证码
我们在很多网站会遇到,如果请求量大了之后就会遇到验证码的情况。最让人诟病的12306,其实也是一定程度上的防止非正当请求的产生。对于验证码,可以通过OCR来识别图片,Github上面有很多大神分享的代码可以用,可以去看看。
2、IP限制
限制IP也是很多网站反爬虫的初衷,但是我们可以通过飞鱼IP不断更换IP的形式来绕过这种限制,
3、动态加载
通过异步加载,一方面是为了反爬虫,一方面也可以给网页浏览带来不同的体验,实现更多的功能。很多动态网站都是通过ajax或者JavaScript来加载请求的网页。在遇到动态加载的网页的时候就需要去分析ajax请求,一般情况都能直接找到包含我们想要数据的json文件。如果网站给文件加密,那么可以通过selenium+phantomJS框架,调用浏览器内核,并利用phantomJS执行js来模拟人为操作以及触发页面中的js脚本。理论上selenium是比较全能的爬虫方案,因为这个确实算是真实的用户行为。除非网站的反爬虫严苛到宁愿误杀的地步。
ip代理是爬虫中比较常用到的一个方式,不仅是可以解决网站对ip的限制,而且还可以通过ip代理来隐藏自己的真实ip,更好的开展爬虫。
本文源自智连IP官方网站(www.zhilianip.com),转载请注明出处,否则追究法律责任!!