您的位置:首页 > 新闻资讯 >文章内容
常见几个突破反爬虫的技巧
来源:互联网 作者:admin 时间:2019-01-14 15:45:31

    写一个爬虫并不难,特别是使用python语言编写更是可以利用各种的库,相对其他语言更加容易些,即使如此,爬虫不能很高效的完成任务的,这是因为网站都有设置了反爬虫,如果不能突破这些反爬虫,是无法顺利的获取到信息的。那么这么反爬虫应该如何突破呢?下面小编为大家介绍几个突破反爬虫的技巧:


    1.利用分布式爬取


    分布式爬取的也有很多Githubrepo。基本原理具体是维护一个所有集群机器能够有效分享的分布式队列。


    运用分布式爬取再有其它一个意义:大规模爬取,单台设备的负荷太大,更何况速度比较慢,多台设备还可以设置一个master管理多台slave去一起爬取。


常见几个突破反爬虫的技巧


    2.修改User-Agent


    最普遍的就是伪装浏览器,修改User-Agent(用户代理)。


    User-Agent是指包含浏览器信息、操作系统信息等的一个字符串,也称作一种特殊的网络协议。服务器根据它判断当前浏览对象是浏览器、邮件客户端还是爬虫。在request.headers里还可以查看user-agent,有关如何分析数据包、查找其User-Agent等信息,这些在前边的文章里提到过。


    具体做法可以把User-Agent的值改为浏览器的办法,乃至可以设置一个User-Agent池(list,数组,字典都可以),存放多个“浏览器”,每一次爬取的时候任意取一个来设置request的User-Agent,这样User-Agent会一直在变化,防止被墙。


    3.修改IP


    其实微博识别的是IP,并不是账号。换句话说,当需要连续爬取许多数据的时候,模拟登录都没有意义。如果是相同IP,不管怎么换账号都没有用,主要的是换IP。


    web server应对爬虫的策略之一就是直接将IP或是整个IP段都封掉禁止访问,当IP被禁封后,转换到其他IP继续访问即可。方法:代理IP、本地IP数据库(使用IP池),比如使用机灵代理,千万级的IP池,更换IP更有保障。


    4.设置cookies


    cookie其实是储存在用户终端的某些被加密的数据,一些网站通过cookies来识别用户身份,假如某个访问总是高频率地发请求,很可能会被网站注意到,被嫌疑为网络爬虫,这时候网站就可以通过cookie找到这些访问的用户而拒绝接受其访问。还可以自定义设置cookie策略(防止cookie rejected问题:拒绝写入cookie)或者禁止cookies。


    5.控制时间频率


    规模性集中访问对服务器的影响很大,网络爬虫可以短时间扩大服务器负载。在这里必须注意的是:设定下载时间间隔的范围控制,时间间隔过长,无法满足短时间大规模抓取的要求,等待的时间过短则很有可能被拒绝访问。


    在之前“从url获取HTML”的方法里,针对httpGet的配置设置了socket超时和连接connect超时,其实这里的时长不是绝对的,关键在于目标网站对网络爬虫的控制。另外,在scrapy爬虫框架里,专有参数可以设置下载等待时间download_delay,这些参数可以设置在setting.py里,也能设置在spider里。


    上文介绍了五个突破反爬虫的技巧,这里要提醒下,互联网上海量的网站,各个网站的反爬虫机制都不同,不尽是使用上面的反爬虫机制,但是上面介绍的五种是非常常见的,即使没有全部使用,也包含一二。另外,还有许多的反爬虫机制,这就需要根据网站而定了。


相关文章内容简介
推荐阅读
  • 16 2019-04
    抓取过程中遇到代理服务器无法用怎么办?

    抓取过程中遇到代理服务器无法用怎么办?一个爬虫代码不是写好了就行,在运行的过程中或许会出现各种的问题,如JavaScript渲染,还有抓取信息不一致等等,不单单是代理服务器的问题。对

  • 30 2019-05
    代理IP什么时候检测有效性好

    代理IP什么时候检测有效性好?不是所有的代理IP中的IP都是有效的资源,尤其是免费的,百分之九十以上都是不可用的。因此我们需要检测代理IP的有效性,看看这些IP是否可用。

  • 09 2020-04
    电脑为什么要设置IP地址

    我们都知道,在使用电脑的过程中每台电脑都有一个IP地址,这个IP地址就相当于我们的身份证,在网络中可以通过IP地址知道我们电脑的所在地。那么,电脑为什么要设置IP地址?

  • 19 2020-11
    修改IP地址的好处

    每一台电脑都有自己的IP地址,如果是在同一家公司使用不同的电脑往往会用到相同的IP地址,容易引发冲突上不了网,在这个时候修改IP地址就显得非常重要了。对于那些网络营销从业者,更改

  • 31 2019-05
    游戏号被封IP可能是同IP引起的

    游戏号被封IP可能是同IP引起的,也就是说使用大量的游戏号,这些游戏号的IP地址还都是一样的,并且在同一个ip下同时长期登录使用。比方说用安卓模拟器在电脑上登录多个游戏号,使用的是

  • 25 2020-12
    如何选择低成本的代理IP

    我们的现代生活已经离不开互联网。互联网公司收集大数据进行分析,建立自己的数据库,也产生了无数的数据收集公司。这就是我们通常所说的网络爬虫或网络治理。在收集数据的过程中,web

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部