python反爬虫解决方法

509次阅读
没有评论

python反爬虫解决方法

我们需要获取数据的时候经常会被一些反爬措施阻拦住,那么都有哪些方法可以让我们成功找到想要的数据呢?对于python初学者这些措施还比较陌生,所以我们先从常见的反爬虫入手,这样才能找到一些对应的解决办法,当然本篇知识一个基础知识的梳理,后期在爬虫和应对反爬虫的方法上我们都会进行一些讲解和补充。

常见的反爬虫机制有:

  • 分析用户请求的headers信息
  • 检测用户行为,如短时间内同一个IP频繁访问
  • 动态加载增加爬虫难度
  • 验证码反爬虫
  • 信息需要登录才能显示

常见的大家可能都见过,那么不常见的呢?

有的网站某些信息是加密的,可能浏览器上看到的是这样,我们复制出来看到的又不一样,这种需要解密;

有的网站会检测用户鼠标移动情况,爬虫肯定是没有鼠标移动的,那么肯定被干掉;

还有就是代理IP,我们都知道网上存在大量代理IP,通过一些网站我们可以拿到免费IP,但是别人网站页可以拿到的,别人拿到这些IP后直接BAN掉,所以失效,需使用更高效的ADSL拨号代理。

 

常见反爬机制

1、关于headers

常见的为浏览器加入headers,需要设置Requests Headers里面的内容

其中的每一个参数都有自己的作用,面对不同的网站时方法也不一样。

 

2、关于代理

简单方法就是购买,免费的和收费的相比还是差了不少。

 

3、关于Cookie

请求会返回多个Cookie,我们从其中找到最有效的Cookie,这回极大的提高效率

 

4、关于Selenium

Selenium可以完美解决反爬,因为它就是一个真实的浏览器在操作,网站没理由把它干掉。

但是也要看到Selenium的缺点,速度慢、效率低是最主要问题。自己写着玩玩可以,但是在真是的应用中,Selenium并不常见。

当然,你可以使用Selenium+Phantomjs,并对其进行优化,速度和别的爬虫还是没法比。

以上都是一些常见的应对反爬虫的解决措施,有一些小伙伴们是已经接触过的,这里就不再过多的叙述了,想要了解的可以先找寻一些其他资料。

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:wuyou2021-05-20发表,共计821字。
新手QQ群:570568346,欢迎进群讨论 Python51学习