您的位置:首页 >资讯列表 > 正文
发布时间:2020-05-19 15:47
爬虫该如何避免封ip

  做爬虫,碰到最多的问题不是代码bug,而是封IP。开发好一个爬虫,部署好服务器,然后开始抓取信息,不一会儿,就提示封IP了,这时候的内心是崩溃的。


u=220144944,3375774361&fm=26&gp=0.jpg


  那么,有什么办法不封IP呢?首先,要知道为什么会封IP,这样才能更好地避免封IP。有些网站反爬措施比较弱,伪装下IP就可以绕过了,修改X-Forwarded-for就万事大吉。但现在这样的网站比较少了,大部分的网站反爬措施都在不断加强,不断升级,这给避免封IP带来更大的困难。


  有人说,使用代理IP就万事大吉了。诚然,使用大量的优质代理IP可以解决大部分的问题,但并非高枕无忧。很多朋友购买了代理IP后,还经常向我抱怨,使用了代理IP为什么还被封,我要这代理IP何用?


  我们知道,网站的反爬虫策略主要是反那些比较猖狂的爬虫,不可能反那些正常的用户。那么什么样的用户是正常的用户呢,如果将爬虫伪装成正常的用户呢,是不是就不会被封了?!


  首先,正常的用户访问网站频率不会太快,毕竟手速是有限,眼速也是有限的,爬虫要伪装成用户,那么抓取的频率就不能反人类,但这样一来,效率就大大降低了,怎么办?可以使用多线程来解决。


  其次,一些网站往往需要验证码来验证,对于正常用户来说,只要不是眼瞎基本都没问题,但对于爬虫来说,就需要一套比较厉害的验证码识别程序来识别了,像12306这样的验证码就比较难搞定了。


  最后,就是一些其他的细节了。比如,UserAgent经常换一换,cookie要清一清,访问的顺序最好不要有规律,爬取每个页面的时间没有规律等等。


  反爬虫策略不断升级,相应的爬虫策略也要不断升级,不然有一天,你会发现,哪怕您使用了大量的代理IP,依然避免不了大面积的封IP,爬虫工作受阻。


上一篇 分布式爬虫怎么使用代理ip 下一篇 怎么选择好的爬虫代理IP