在编写爬虫爬取数据的时候,由于不少网站都有反爬虫措施,因此很容易被封IP,就不能继续爬了。在爬取大数据量的数据时更是瑟瑟发抖,时刻担忧着下一秒IP可能就被封了。html
本文就如何解决这个问题总结出一些应对措施,这些措施能够单独使用,也能够同时使用,效果更好。python
在请求头中把User-Agent设置成浏览器中的User-Agent,来伪造浏览器访问。好比:git
还能够先收集多种浏览器的User-Agent,每次发起请求时随机从中选一个使用,能够进一步提升安全性:github
把上面随机选择一个User-Agent的代码封装成一个函数:浏览器
注:一些常见浏览器的User-Agent可参见:https://blog.csdn.net/qianxing111/article/details/79415857安全
若从浏览器中能够正常访问一个页面,则能够将浏览器中的cookies复制过来使用,好比:cookie
注:用浏览器cookies发起请求后,若是请求频率过于频繁仍会被封IP,这时能够在浏览器上进行相应的手工验证(好比点击验证图片等),而后就能够继续正常使用该cookies发起请求。app
能够换着用多个代理IP来进行访问,防止同一个IP发起过多请求而被封IP,好比:dom
道高一尺魔高一丈,你有反爬虫措施,那我也有各类"反反爬虫"的措施,GitHub上就有一位大神专门整理了一个这样的项目:Anti-Anti-Spider,连接地址为:
https://github.com/luyishisi/Anti-Anti-Spider
能够研究一下。ide
做者:m2fox
连接:https://www.jianshu.com/p/736412753551