博客
关于我
[851]反反爬--如何巧过CloudFlare 5秒盾
阅读量:649 次
发布时间:2019-03-13

本文共 981 字,大约阅读时间需要 3 分钟。

修复Cloudflare的5秒防护机制,如何无感抓取Cloundflare加速的网站

当我们试图通过爬虫抓取使用Cloudflare加速的网站时,往往会遇到一个固有的阻碍——5秒的响应等待提示。深入分析该机制工作原理,便能找到绕过防护的有效方法。

在第一个访问请求中,浏览器会执行三个关键操作:

  • 写入__cfduid cookie字段,该字段用于跟踪用户唯一性,这是为了确认用户是否为人类。
  • 发送加密参数请求,并将cf_clearance cookie字段写入。
  • 使用前面写入的cookie字段访问网站主页,获取实际内容。
  • 这些操作说明,Cloudflare通过三步验证来识别异常请求。一旦检测到IP地址异常活跃,Cloudflare就会暂停响应并向用户显示5秒等待提示。

    通过正规方法实现抓取,虽然可行,但缺乏"巧"妙之处:

  • 使用浏览器模拟工具(如Selenium/PhantomJS)进行请求
  • 使用请求库模拟完整抓取过程
  • 这些方法虽可行,但显得平淡无奇。为此,我们开发了一款专门针对Cloudflare防护机制的Python库cloudflare-scrape。该库旨在无感化绕过Cloudflare的防护机制,实现无感爬取。

    云扫 serpent 如何安装使用:

    {"安装说明": "通过pip安装,需确保本地安装node.js开发环境。安装指令如下:","code": "pip install cfscrape\n"}{"使用实例": "以下是针对不同请求类型的实现示例"}{"get请求示例": "import cfscrape\n\nscraper = cfscrape.create_scraper(delay=10) #延迟10秒\nweb_data = scraper.get('目标URL').content\nprint(web_data)\n"}{"post请求示例": "import cfscrape\ncrawler = cfscrape.create_scraper()\nresponse = crawler.post('目标URL', data={"参数": "值"}).content\nprint(response)\n"}

    通过云扫 serpent,实现对Cloudflare网站的无感抓取,只需三行代码即可轻松完成。

    转载地址:http://bmxaz.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现elgamal 密钥生成器算法(附完整源码)
    查看>>
    Objective-C实现EM算法(附完整源码)
    查看>>
    Objective-C实现EM算法(附完整源码)
    查看>>
    Objective-C实现entropy熵算法(附完整源码)
    查看>>
    Objective-C实现euclidean distance欧式距离算法(附完整源码)
    查看>>
    Objective-C实现Euclidean GCD欧几里得最大公约数算法(附完整源码)
    查看>>
    Objective-C实现euclideanDistance欧氏距离算法(附完整源码)
    查看>>
    Objective-C实现euler method欧拉法算法(附完整源码)
    查看>>
    Objective-C实现euler modified变形欧拉法算法(附完整源码)
    查看>>
    Objective-C实现eulerianPath欧拉路径算法(附完整源码)
    查看>>
    Objective-C实现Eulers TotientFunction欧拉函数算法(附完整源码)
    查看>>
    Objective-C实现eulers totient欧拉方程算法(附完整源码)
    查看>>
    Objective-C实现EulersTotient欧拉方程算法(附完整源码)
    查看>>
    Objective-C实现eval函数功能(附完整源码)
    查看>>
    Objective-C实现even_tree偶数树算法(附完整源码)
    查看>>
    Objective-C实现Exceeding words超词(差距是ascii码的距离) 算法(附完整源码)
    查看>>
    Objective-C实现exchange sort交换排序算法(附完整源码)
    查看>>
    Objective-C实现ExponentialSearch指数搜索算法(附完整源码)
    查看>>
    Objective-C实现extended euclidean algorithm扩展欧几里得算法(附完整源码)
    查看>>
    Objective-C实现ExtendedEuclidean扩展欧几里德GCD算法(附完整源码)
    查看>>