博客
关于我
[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/

    你可能感兴趣的文章
    nrm —— 快速切换 NPM 源 (附带测速功能)
    查看>>
    nrm报错 [ERR_INVALID_ARG_TYPE]
    查看>>
    NS3 IP首部校验和
    查看>>
    NSDateFormatter的替代方法
    查看>>
    NSError 的使用方法
    查看>>
    NSGA-Ⅲ源代码
    查看>>
    nsis 安装脚本示例(转)
    查看>>
    NSJSON的用法(oc系统自带的解析方法)
    查看>>
    nslookup 的基本知识与命令详解
    查看>>
    NSNumber与NSInteger的区别 -bei
    查看>>
    NSOperation基本操作
    查看>>
    NSRange 范围
    查看>>
    NSSet集合 无序的 不能重复的
    查看>>
    NSURLSession下载和断点续传
    查看>>
    NSUserdefault读书笔记
    查看>>
    NS图绘制工具推荐
    查看>>
    NT AUTHORITY\NETWORK SERVICE 权限问题
    查看>>
    NT symbols are incorrect, please fix symbols
    查看>>
    ntelliJ IDEA 报错:找不到包或者找不到符号
    查看>>
    NTFS文件权限管理实战
    查看>>