首页 > 其他分享 >企业如何有效的防爬虫?

企业如何有效的防爬虫?

时间:2022-12-02 13:32:18浏览次数:115  
标签:浏览器 账号 ip 爬虫 有效 成本 反爬 如何

防爬虫,简单来说,就是在尽量减少对正常用户的干扰的情况下尽可能的加大爬虫的成本。

而反防爬虫,或者说制造隐蔽性强的爬虫,就是尽量模拟正常用户的行为。

这两者是动态博弈的。大公司基本都有防爬的项目,以保护数据安全。

你去试试爬几个大网站就知道了。

企业如何有效的防爬虫?_爬虫代理

比如,github用的是ratelimit,就搜索接口而言,对非登录用户限制非常严格,一小时只允许几十次搜索。而对登录账号则很宽松。这样就把行为统计规约到了账号上,毕竟换账号成本比ip高。

而谷歌则更复杂,比如它会在网页中执行一段js,js中做一些校检,然后服务器端将请求数据对比,这样那些不支持动态解析的爬虫就都死了。

另外谷歌也会维护一份爬虫ip列表,这样即使你使用爬虫ip也很容易死,当然很多收费爬虫ip使用的是一些黑科技,确实可以绕过这份列表。

阿里内部也有一套专门的防爬系统,用的一个比较复杂的建模策略,能够直接无视爬虫ip的更换,从行为模式上检测出爬虫。比如一些特定数据受到非正常量级的请求,那么就可以判定有人在做坏事了。

当然防爬有误报是正常的,所以一般反爬系统都要做一个容限,只有超过一定阀值了才会bang掉你。即使bang掉了,一般也是让你填一个验证码。无论你是做验证码识别,还是花钱人肉打码,他的目的其实都达到了:增加爬取者的成本。

所以简单来说,一个成功的爬虫,需要这几个特点:

模拟浏览器提交

简单的,使用webkit来提交数据,这个基本可以过大多数浏览源检测的反爬系统了。

但是有的反爬系统检测浏览源的时候,会根据大众浏览器的一些特性,比如IE,Firefox,Chrome等的私有js函数来判定浏览器,这样webkit,以及一些封装好的无界面浏览器也被当成爬虫了。当然,你也可以利用调用chromuim来爬取数据,但是这个资源开销就更大了。

控制单ip/账号频率

挂私有爬虫ip来爬的就不说了,大家都会用,但是对于一般人来说,几万ip差不多是极限了,所以一个ip还是得多次请求,账号同理。而控制了爬取速度,则意味着爬完一圈需要更多时间。时间都是成本。

控制爬取策略

如果简单的只对目标数据进行爬取,那么如果反爬系统对访问概况和用户行为进行分析,其实很简单就能判定爬虫的那堆ip:你除了这堆数据什么都没访问,一看就不是正常用户。

当然策略这个东西,就需要更多的博弈了。爬虫要增加迷惑度,需要去访问一些无关的东西,最后是研究正常用户的访问流程,然后模拟一遍。再者,控制速度。毕竟反爬系统的统计区间是肯定有限制的,不可能拿一个月的数据都分析一遍找出爬虫。

以上,其实懂了爬虫的策略,反爬策略也很明朗了。

爬虫成本

反爬系统的存在,意义就在于增加这个成本。当然也需要衡量自身的成本,毕竟不能本末倒置,反爬成本太高就没价值了。

标签:浏览器,账号,ip,爬虫,有效,成本,反爬,如何
From: https://blog.51cto.com/u_13488918/5906966

相关文章

  • 如何追踪别人IP地址
    电脑和互联网已经成为我们工作和生活中不可或缺的重要的工作和交流的工具。我们的电脑里面也存储了大量的个人信息和公司的信息,当我们在广阔的互联网络世界里尽情遨游的时候......
  • 如何能调动团队的积极性
    做为一个PM,如何调动团队的积极性,其实是个很大的问题,一时其实也很难就一两篇文章就讨论清楚,但这里还是想抛下砖,希望大家都共同探讨,把"玉"引出......
  • 车载测试系列:CANoe中如何创建dbc文件
    用CANoe读取信号时,需要加载DBC文件。信号是报文的主要组成部分,通过DBC数据库,可以在测试过程中进行信号解析。CANoe的Tools菜单下打开CANdb++: 一、CANdb++左侧网络拓......
  • WPS表格如何隔行填充颜色
    全选数据表格,选择工具栏中“条件格式”,选择“新建规则”;选择“使用公式确定要设置格式的单元格”;输入公式“=MOD(ROW(),2)”,点击格式,进入设置;选择“图案”,选择需要设置的颜......
  • Linux如何查看当前占用CPU或内存最多的K个进程
    内存可以使用以下命令查使用内存最多的K个进程方法1:ps-aux|sort-k4nr|head-K如果是10个进程,K=10,如果是最高的三个,K=3说明:ps-aux中(a指代a......
  • 火山引擎 DataTester 揭秘:字节如何用 A/B 测试,解决增长问题的?
     更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群上线六年,字节跳动的短视频产品——抖音已成为许多人记录美好生活的平台。除......
  • 软件工程心理学之---乙方如何面对甲方之1
     在之前的软件工程心理学系列的文章中,谈到了关于在整个软件项目工程范围内,甲方领导,甲方以及乙方的之间的一些关系,以及作为甲方负责人,如何能揣摩好领......
  • 技巧:WORD中过宽表格如何横向设置问题
    ......
  • 如何使用向导创建Openflow 流表-网络测试仪实操
    ​使用向导创建Openflow中的FlowTable,按照下面的步骤:1、打开Renix软件,连接机框并预约测试端口;​编辑2、配置一个IPv4接口​编辑3、配置一个OpenFlowController绑......
  • git如何修改远程仓库地址
    1、gitbash进行配置gitremote-v//查看原始的fetch和push路径gitremote-vgitremoteset-urloriginhttps://github.com/xxx/xxx.git//更换新的仓库地址......