您的位置:首页 > 新闻资讯 >文章内容
爬虫大规模抓取数据时,学会这几招大大降低风险
来源:互联网 作者:admin 时间:2019-01-19 17:38:51

    现在即使是个小网站,网页数量也不少,更比说一些大型的网站了。通常使用爬虫采集数据,都是找一些有价值的网站,这些网站的防御强,如果想顺利的爬取数据,还需要多学几招突破的方法。


    第一招,使用分布式框架


    分布式爬取的也有很多Githubrepo。原理主要是维护一个所有集群机器能够有效分享的分布式队列。使用分布式爬取还有另外一个目的:大规模抓取,单台机器的负荷很大,况且速度很慢,多台机器可以设置一个master管理多台slave去同时爬取。


    第二招:使用代理IP


    很多网站都有IP限制的,只要是同一个IP,不管怎么换账号也没有用,主要的是换IP。有些网站应对爬虫的策略之一就是直接将IP或者整个IP段都封掉禁止访问,当IP被禁封后,就需要使用代理IP来突破限制了,可以考虑使用机灵代理。


爬虫大规模抓取数据时,学会这几招大大降低风险


    第三招:设置cookies


    cookie其实是储存在用户终端的一些被加密的数据,有些网站通过cookies来识别用户身份,如果某个访问总是高频率地发请求,很可能会被网站注意到,被嫌疑为爬虫,这时网站就可以通过cookie找到这个访问的用户而拒绝其访问。


    但是采集某些网站时cookie是不可或缺的。要在一个网站上持续保持登录状态,需要在多个页面中保存一个cookie。有些网站不要求在每次登录时都获得一个新cookie,只要保存一个旧的已登录的cookie就可以访问。


    第四招:模仿用户行为


    最常见的就是伪装浏览器,修改User-Agent,经常换一换;访问时间间隔设长一点,访问时间设置为随机数;访问页面的顺序也可以随机着来。


    第五招:避开蜜罐


    虽然在进行网络数据采集时用CSS属性区分有用信息和无用信息会很容易(比如,通过读取id和class标签获取信息),但这么做有时也会出问题。如果网络表单的一个字段通过CSS设置成对用户不可见,那么可以认为普通用户访问网站的时候不能填写这个字段,因为它没有显示在浏览器上。如果这个字段被填写了,就可能是机器人干的,因此这个提交会失效。


    这种手段不仅可以应用在网站的表单上,还可以应用在链接、图片、文件,以及一些可以被机器人读取,但普通用户在浏览器上却看不到的任何内容上面。访问者如果访问了网站上的一个“隐含”内容,就会触发服务器脚本封杀这个用户的IP地址,把这个用户踢出网站,或者采取其他措施禁止这个用户接入网站。


    虽然你不太可能会去访问你找到的那些隐含链接,但是在提交前,记得确认一下那些已经在表单中、准备提交的隐含字段的值(或者让Selenium为你自动提交)。


    在爬取数据时难免出现ip被封等情况,这是因为爬虫被限制住了,上文主要总结了一些常见的情况及规避的措施。要想顺利的的采集到数据,那么还是要学会上面的几招突破方法


相关文章内容简介
推荐阅读
  • 11 2019-06
    搭建移动设备使用的代理服务器

    搭建移动设备使用的代理服务器,这与pc端有什么不同呢?移动设备想要访问位于局域网中的某个特定设备上搭建的服务,需要通过代理服务器来实现,针对不同操作系统搭建代理服务器有不同

  • 25 2019-04
    动态IP代理选用什么套餐使用好?

    很多人会疑惑,动态IP代理选用什么套餐使用好?到底是按照有效时间选,还是按照提取IP数量选呢?关于这些问题,小编就机灵代理为大家介绍下,其实很多动态IP代理的商家都针对用户的需求

  • 17 2019-09
    代理IP池由什么组成?

    为了让爬虫能够顺利开展,通常都会需要有一个代理IP池去为爬虫工作做支撑,这样才能够保证爬虫能够顺利进行,不会轻易触发反爬虫。那么,怎么去搭建一个代理IP池,代理IP池又是由什么组

  • 11 2019-01
    哪些语言可以写网络爬虫?Scrapy框架值得作为第一选择

    在这个大数据时代,许多企业都使用网络爬虫来采集信息,这网络爬虫可以使用语言来编写呢?哪一个语言编写网络爬虫的效果最好?现在的编程语言可不少,比如Python、PHP、c#和Java等的,最常

  • 03 2019-06
    Socks5代理功能的设置方法

    有些游戏可以设置代理功能的,例如逆水寒,可以设置Socks5代理使用,那么这Socks5代理功能的设置方法是如何的呢?

  • 09 2019-07
    电脑秒换IP用专业的代理ip工具

    电脑秒换IP用专业的代理ip工具,这样想要改电脑的ip这是比较简单的。不然我们需要手动更换ip,这样要知道可以更换的ip地址,然后找到换ip的位置进行ip更改即可,比如:

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

大客户经理微信

微信公众号

微信公众号

回到顶部