草庐IT

反爬及反反爬

Donald_32e5 2023-11-08 原文

本文涉及反爬措施

  • 1、强制等待
  • 2、动态生成Cookies
  • 3、Headers
  • 4、UA
  • 5、IP限制
  • 6、Ajax动态加载
  • 7、Cookies
  • 8、 验证码
  • 9、JS渲染

I、强制等待(Cloudflare)

  • 1、Cloudflare是一家美国的科技公司,可以帮助受保护站点抵御包括分布式拒绝服务攻击(DDoS, Distributed Denial of Service)在内的大多数网络攻击。
  • 2、被保护的网站会在此界面上强制等待3-10s的样子

  • 3、遇见这种情况,推荐使用一个开源包来解决。作者会基本上是同步Cloudflare的措施更新的。

  • 4、附上传送门


II、动态生成Cookies

  • 1、这种类型的网站一般会让浏览器请求两次:

  • 2、第一次请求的时候,给一串js代码串,浏览器会渲染出来,取得cookies,同时会有一个redict跳转命令

  • 3、第二次请求的时候,带上第一次的cookies,返回正常的html

  • 4、类似这种网站,要不直接使用selenium,要不你就自己把它第一段返回的js解析出来

  • 5、本人使用的是PyExecJS。这种工具还是很多的,用自己最熟悉的最好不过了


III、Headers

  • 1、如果没记错的话,现在百度首页,如过不带headers是不给数据的,基本上headers是一个爬虫的标配
  • 2、headers这边我一般都是先只带UA,如过UA不行的话才会加上别的字段
  • 3、至于headers中各字段的意义,就不多赘述,如果想了解的伙伴移步HTTP请求中的Header各字段的意思

IV、UA(User-Agent)

  • 1、UA的话基本都是直接填充在headers中使用了
  • 2、要爬同一网站大批量的数据的时候,还是创建一个UA池更好
  • 3、创建一个UA池

V、IP限制

  • 1、通过ip反爬在很长一段时间内是最通用的方法了。

  • 2、网站根据你的ip地址访问的频率进行限制,这种ip反爬基本上已经成了各大厂的低配反爬了,只要稍微快一点,频率高一点,分分钟被封

  • 3、解决的方法还是得使用代理ip了,至于ip的质量,还是得看自己所需数据的量来定了

  • 4、在买代理之前也可以搜一下,看自己的业务到底适合哪种代理:传送门


VI、Ajax动态加载

  • 1、如果数据是通过ajax加载的话,有好处也有坏处
  • 2、好处是可以直接找到API接口获取数据
  • 3、坏处是如果API是加密的,或是你解不掉它的加密,也就不能再直接获取html标签了
  • 4、通常使用ajax获取数据的接口,都是在js中封装的requests,如果想直接拿出API,那对JS的功力也是一中考验了
  • 5、若果实在破解不了,那也只能用selenium牺牲速度,来换取数据了。

VII、Cookies

  • 1、有的网页打开的时候,会随机生成一个cookies,如果在此打开这个网页发现cookies不存在,再次设置一个,但第三次打开还是没有cookies,就会认定为是爬虫在工作了

  • 2、这种情况的话,可以把cookies封装在headers中,每次都带上

  • 3、Python的requests模块会有一个session,每次请求都会带上cookies


VIII、验证码

  • 1、验证码就不用多介绍了吧,这事最常见的一种反爬措施
  • 2、推荐一个数字验证码大码平台,当然是收费的:斐斐打码
  • 3、在推荐一个专业的验证码解决平台:传送门

VIIII、JS渲染

  • 1、分析网页源代码数据,如果数据是隐藏在 HTML 中的其他地方,以 JavaScript 变量的形式存在,直接提取就好了。
  • 2、分析 Ajax,很多数据可能是经过 Ajax 请求时候获取的,所以可以分析其接口。
  • 3、模拟 JavaScript 渲染过程,直接抓取渲染后的结果。

有关反爬及反反爬的更多相关文章

  1. 反爬反反爬,总是找不到,拿来做个备份,方便后面查看 - 2

    反爬与反反爬策略学习目录:一、常见反爬策略二、反反爬策略学习内容:"爬虫与反爬虫永远是相生相克的:当爬虫知道了反爬策略就可以制定反-反爬+策略,同样地,网站知道了爬虫的反-反爬策略就可以制定反-反-反爬策略。正可谓是道高一尺魔高一丈,两者之间的斗争是永远不会结束的。"✨✨一、常见反爬策略反爬虫,是指对扫描器中的网络爬虫环节进行反制,通过一些反制策略来阻碍或干扰爬虫的正常爬行,从而间接地起到防御目的。比如当我们在某一网站浏览过快时,这种快速浏览的行为很接近爬虫,系统往往就会要求输入验证码。在爬虫诞生之初,一些搜索引擎从业者和网站站长经过商讨定下了一项“君子协议”——robots.txt,即网站有

  2. 反爬及反反爬 - 2

    本文涉及反爬措施:1、强制等待2、动态生成Cookies3、Headers4、UA5、IP限制6、Ajax动态加载7、Cookies8、验证码9、JS渲染I、强制等待(Cloudflare)1、Cloudflare是一家美国的科技公司,可以帮助受保护站点抵御包括分布式拒绝服务攻击(DDoS,DistributedDenialofService)在内的大多数网络攻击。2、被保护的网站会在此界面上强制等待3-10s的样子3、遇见这种情况,推荐使用一个开源包来解决。作者会基本上是同步Cloudflare的措施更新的。4、附上传送门II、动态生成Cookies1、这种类型的网站一般会让浏览器请求两次:

  3. 自学Python爬虫:常见的反爬与反爬处理 - 2

    有爬虫就有反爬虫的,双方都是一直在博弈升级中。常见的反爬虫措施有:字体反爬基于用户行为反爬虫基于动态页面的反爬虫IP限制UA限制Cookie限制与之应对的反爬处理手段有:字体反加密控制IP访问次数频率,增加时间间隔用户代理池技术验证码OCR处理抓包Cookie池保存与处理说在最后:关于爬虫是否合法,在不睬法律红线的前提下,合法的数据抓取是没有问题的,不做亏心事不怕鬼敲门,还有就是控制一下自己的好奇欲,别乱爬就行。爬虫技术是一把刀,怎么用这把刀才是关键。________________END______________

  4. 爬虫反爬:JS逆向之某d翻译 - 2

    1.简介快速优雅地学会JS逆向,就需要从实战开始,接下来我会提供Base64加密的原网址以及接口参数,从实战中学习如何下断点、抠代码、本地运行等操作,此技术一般用于爬虫上,是一个爬虫程序猿进阶的必经之路。2.实战信息网址:aHR0cHM6Ly9mYW55aS5iYWlkdS5jb20vP2FsZHR5cGU9MTYwNDcjYXV0by96aA==接口:aHR0cHM6Ly9mYW55aS5iYWlkdS5jb20vdjJ0cmFuc2FwaT9mcm9tPXpoJnRvPWVu逆向参数:sign:232427.485594token:3dde9ef10b6f6ae310af38e6f1bd5

  5. 已解决selenium框架接管已经打开的谷歌浏览器(Python反反爬教程,亲测有效) - 2

    已解决selenium框架接管已经打开的谷歌浏览器(Python反反爬教程,亲测有效)文章目录问题描述解决方法千人全栈VIP答疑群联系博主帮忙解决报错问题描述使用selenium自动化测试爬取pdd的时候,通过携带cookie和和账号密码登录,都出现了:错误代码10001:请求异常请升级客户端后重新尝试,这个错误的产生是由于pdd可以检测selenium自动化测试的脚本,因此可以阻止selenium的继续访问。这也算是比较高级的反爬取措施。解决方法第一步:找到谷歌浏览器的启动路径,默认在:C:\ProgramFiles\Google\Chrome\Application复制去打开进入路径,如下

  6. 已解决selenium框架接管已经打开的谷歌浏览器(Python反反爬教程,亲测有效) - 2

    已解决selenium框架接管已经打开的谷歌浏览器(Python反反爬教程,亲测有效)文章目录问题描述解决方法千人全栈VIP答疑群联系博主帮忙解决报错问题描述使用selenium自动化测试爬取pdd的时候,通过携带cookie和和账号密码登录,都出现了:错误代码10001:请求异常请升级客户端后重新尝试,这个错误的产生是由于pdd可以检测selenium自动化测试的脚本,因此可以阻止selenium的继续访问。这也算是比较高级的反爬取措施。解决方法第一步:找到谷歌浏览器的启动路径,默认在:C:\ProgramFiles\Google\Chrome\Application复制去打开进入路径,如下

  7. 有反爬机制就爬不了吗?那是你还不知道反反爬,道高一尺魔高一丈啊 - 2

    文章目录一、从用户请求的Headers反爬虫二、基于用户行为反爬虫(1)方法1(2)方法2三、动态页面的反爬虫四.总结不知道你们在用爬虫爬数据的时候是否有发现,越来越多的网站都有自己的反爬机制,抓取数据已经不像以前那么容易,目前常见的反爬机制主要有以下几种:数据是通过动态加载的,比如微博,今日头条,b站需要登录,需要验证码,比如铁路12306,淘宝,京东请求次数频繁,IP地址在同一时间访问次数过多,导致IP被封数据屏蔽方式,比如访问的数据不在源码中,数据隐藏在js中,比如今日分享,b站爬虫与反爬虫一直以来就像是左右手互博,你有反爬机制,我就有反反爬技术,即见即可爬,道高一尺魔高一丈。今天就为大

  8. 有反爬机制就爬不了吗?那是你还不知道反反爬,道高一尺魔高一丈啊 - 2

    文章目录一、从用户请求的Headers反爬虫二、基于用户行为反爬虫(1)方法1(2)方法2三、动态页面的反爬虫四.总结不知道你们在用爬虫爬数据的时候是否有发现,越来越多的网站都有自己的反爬机制,抓取数据已经不像以前那么容易,目前常见的反爬机制主要有以下几种:数据是通过动态加载的,比如微博,今日头条,b站需要登录,需要验证码,比如铁路12306,淘宝,京东请求次数频繁,IP地址在同一时间访问次数过多,导致IP被封数据屏蔽方式,比如访问的数据不在源码中,数据隐藏在js中,比如今日分享,b站爬虫与反爬虫一直以来就像是左右手互博,你有反爬机制,我就有反反爬技术,即见即可爬,道高一尺魔高一丈。今天就为大

  9. python如何快速采集美~女视频?无反爬 - 2

    人生苦短我用python~这次康康能给大家整点好看的不~环境使用:Python3.8Pycharmmou歌浏览器mou歌驱动—>驱动版本要和浏览器版本最相近模块使用:requests>>>pipinstallrequestsselenium>>>pipinstallselenium==3.141.0默认安装4.0版本语法上面有点区别rejson卸载模块:pipuninstallselenium卸载模块安装python第三方模块:win+R输入cmd点击确定,输入安装命令pipinstall模块名(pipinstallrequests)回车在pycharm中点击Terminal(终端)输入安装命

  10. python如何快速采集美~女视频?无反爬 - 2

    人生苦短我用python~这次康康能给大家整点好看的不~环境使用:Python3.8Pycharmmou歌浏览器mou歌驱动—>驱动版本要和浏览器版本最相近模块使用:requests>>>pipinstallrequestsselenium>>>pipinstallselenium==3.141.0默认安装4.0版本语法上面有点区别rejson卸载模块:pipuninstallselenium卸载模块安装python第三方模块:win+R输入cmd点击确定,输入安装命令pipinstall模块名(pipinstallrequests)回车在pycharm中点击Terminal(终端)输入安装命

随机推荐