爬虫ip被限制怎么办?IP被限制,也只能更换新的IP继续采集。这也是为什么爬虫需要使用
代理IP的理由,爬虫需要采集大量的数据,突破访问次数限制,就要有大量的IP资源来支持这项操作。
比如,如果需要要抓取一个网站数据,该网站有100万条内容,但是做了IP限制,每个IP每小时只能抓1000条,如果单个IP去抓,因为受限,需要40天左右才能采集完。
其实对于爬虫而言,IP被限制是常事,如何降低IP被限制的次数?这是使用爬虫采集数据之前需要考虑的问题。
反爬机制不单单是IP限制,还是其他的一些因素,这些因素出问题,也会影响到IP被限制。因此所有有可能暴露爬虫身份的因素都要伪装好,才能有效的降低IP被限制的次数。那么如何做好预防措施呢?
1.伪造cookies
若从浏览器中可以正常访问一个页面,则可以将浏览器中的cookies复制过来使用。
用浏览器cookies发起请求后,如果请求频率过于频繁仍会被封IP,这时可以在浏览器上进行相应的手工验证(比如点击验证图片等),然后就可以继续正常使用该cookies发起请求。
2.控制访问时间
爬虫采集数据的速度可用很快,但如果超过用户的速度,反爬机制就会知道你并不是真实的用户,从而封杀你。因此在访问速度上,也应该做控制。将设置访问的时间间间隔长一点,比如没抓取一个页面休眠一个随机时间。这种方法既可以从一定程度上防止被封,还可以降低对方的访问压力。
3.伪造请求头
在请求头中把User-Agent设置成浏览器中的User-Agent,来伪造浏览器访问。还可以先收集多种浏览器的User-Agent,每次发起请求时随机从中选一个使用,可以进一步提高安全性。