前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >三行代码捅穿 CloudFlare 的五秒盾

三行代码捅穿 CloudFlare 的五秒盾

作者头像
王图思睿
发布于 2021-06-16 08:06:04
发布于 2021-06-16 08:06:04
19.8K08
代码可运行
举报
文章被收录于专栏:膨胀的面包膨胀的面包
运行总次数:8
代码可运行

经常写爬虫的同学,肯定知道 CloudFlare 的五秒盾。当你没有使用正常的浏览器访问网站的时候,它会返回如下这段文字:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Checking your browser before accessing xxx.

This process is automatic. Your browser will redirect to your requested content shortly.

Please allow up to 5 seconds…

即使你把 Headers 带完整,使用代理 IP,也会被它发现。我们来看一个例子。

Mountain View Whisman students sent home after children test positive for COVID-19

这篇文章,使用正常浏览器访问,效果如下图所示:

直接查看原始的网页源代码,可以看到,新闻标题和正文就在源代码里面,说明新闻的标题和正文都是后端渲染的,不是异步加载。如下图所示:

现在,我们使用 requests,带上完整的请求头来访问这个网站,效果如下图所示:

网站识别到了爬虫行为,成功把爬虫请求挡住了。很多同学在这个时候就已经束手无策了。因为这是爬虫的第一次请求就被挡住了,所以网站不是检测的 IP 或者访问频率,所以即使用代理 IP 也无济于事。而现在即使带上了完整的请求头都能被发现,那还有什么办法绕过这个检测呢?

实际上,要绕过这个 5 秒盾非常简单,只需要使用一个第三方库,叫做cloudscraper。我们可以使用 pip 来安装:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
python3 -m pip install cloudscraper

安装完成以后,只需要使用 3 行代码就能绕过 CloudFlare 的 5 秒盾:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import cloudscraper
scraper = cloudscraper.create_scraper()
resp = scraper.get('目标网站').text

我们还是以上面的网站为例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import cloudscraper
from lxml.html import fromstring

scraper = cloudscraper.create_scraper()
resp = scraper.get('https://mv-voice.com/news/2021/05/04/mountain-view-whisman-students-sent-home-after-children-test-positive-for-covid-19').text
selector = fromstring(resp)
title = selector.xpath('//h1/text()')[0]
print(title)

运行效果如下图所示:

破盾成功。

CloudScraper 非常强大,它可以突破 CloudFlare 免费版各个版本的五秒盾。而且它的接口和 requests 保持一致。原来用 requests 怎么写代码,现在只需要把requests.xxx改成scraper.xxx就可以了。

via: 一日一技:如何捅穿Cloud Flare的5秒盾 https://mp.weixin.qq.com/s/zwmatF3yTgSyS0gz8sinaA

VeNoMouS/cloudscraper: A Python module to bypass Cloudflare's anti-bot page. https://github.com/venomous/cloudscraper

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-05-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
一日一技:如何捅穿Cloud Flare的5秒盾
经常写爬虫的同学,肯定知道 Cloud Flare 的五秒盾。当你没有使用正常的浏览器访问网站的时候,它会返回如下这段文字:
青南
2021/05/14
6.5K0
一日一技:如何捅穿Cloud Flare的5秒盾
反反爬 | 如何巧过 CloudFlare 5秒盾?
当我们第一次访问使用 CloudFlare 加速的网站时,网站就会出现让我们等待 5 秒种的提示,当我们需要的通过爬虫爬取这类网站的时候,应该如何爬取呢?
咸鱼学Python
2019/09/24
15.2K0
反反爬 | 如何巧过 CloudFlare 5秒盾?
Scrapy对抗Cloudflare反爬5秒盾
再到 setting.py 中找到DOWNLOADER_MIDDLEWARES启用中间件就好了:
HomeboyC
2022/09/19
9760
绕过TLS/akamai指纹护盾
在之前的项目中,发现一些网站使用不同的客户端会得到不同的结果,比如使用浏览器访问正常没问题,但使用python写脚本或者curl请求就会被拦截,当时也尝试数据包1:1还原,但还是不能解决。
用户1709153
2023/05/06
3.7K0
爬虫浏览器的Cloudflare五秒盾处理
近期业务有不少涉及到国外的网站,本以为经受了和国内大量卷王公司对抗的考验之后,处理国外业务应该是降维打击才对。结果本地测试的时候的确很OK,但是一上线就发现全面飘红,多个不同业务同时出了 Cloudflare 著名的五秒盾:
mythsman
2022/12/13
5.9K0
爬虫浏览器的Cloudflare五秒盾处理
python爬虫-selenium破解封IP+TensorFlow机器人AI技术破解网页加密
python爬虫-selenium破解封IP+pytesseract破解验证码+AI破解网页加密
孔雀
2018/11/22
5K0
python爬虫-selenium破解封IP+TensorFlow机器人AI技术破解网页加密
Cloudflare中firewall的编写方法
​ 这篇文章中说到坏男孩博客一直在使用CloudFlare提供SSL服务和防火墙服务。SSL并没有什么好说的,今天简单介绍一下我是如何写Cloudflare中的防火墙规则。
yumusb
2020/08/28
2.5K0
Cloudflare中firewall的编写方法
Cloudflare(5秒盾)分析!!
大家可以看下, XMLHttpRequest 和 onreadystatechange事件
懒py夏洛
2022/06/02
10.3K2
Cloudflare(5秒盾)分析!!
在Scrapy中如何使用aiohttp?
当我们从一些代理IP供应商购买代理IP时,他们可能是提供一个网址供我们查询当前可用的代理IP。我们周期性访问这个网址,拿到最新的IP,再分给爬虫使用。
青南
2020/07/16
7.4K0
渗透测试中,如何绕过烦人的cloudflare
Cloudflare作为全球领先的网络安全和性能优化服务提供商,其防护机制(如WAF、DDoS防护、Bot管理等)常成为渗透测试中的一大障碍,本文从实战角度出发,针对Cloudflare的防护体系,分享几个绕过cloudflare的小Tips。
星尘安全
2025/04/08
9400
渗透测试中,如何绕过烦人的cloudflare
无头浏览器与请求签名技术-Cloudflare防护
在实际数据采集实践中,许多目标网站(例如 Amazon)都会采用 Cloudflare 等防护措施,防止机器人和非正常流量。本文将分享一个故障场景下的排查与改进方案,讲述如何利用无头浏览器、请求签名技术以及爬虫代理 IP来实现数据采集。
jackcode
2025/03/11
2261
无头浏览器与请求签名技术-Cloudflare防护
一日一技:在Golang下如何相对简单地开发爬虫?
我之前一直用 Python 来写爬虫,现在,尝试用 Golang 来实现一个简单的爬虫,请求网址,然后使用 XPath 提取数据。
青南
2020/09/30
1.8K0
为什么爬虫工程师应该有一些基本的后端常识?
今天在粉丝交流群里面,有个同学说他发现了Requests的一个 bug,并修复了它:
青南
2021/06/23
4930
为什么爬虫工程师应该有一些基本的后端常识?
用 Python 写你的第一个爬虫:小白也能轻松搞定数据抓取(超详细包含最新所有Python爬虫库的教程)
用 Python 写你的第一个爬虫:小白也能轻松搞定数据抓取(超详细包含最新所有Python爬虫库的教程)
猫头虎
2025/06/02
2.2K0
用 Python 写你的第一个爬虫:小白也能轻松搞定数据抓取(超详细包含最新所有Python爬虫库的教程)
聊聊逆向爬取数据
最好的挣钱方式是钱生钱,怎样钱生钱呢,钱生钱可以通过投资,例如买股票、基金等方式,有人可能说买股票基金发财,我没这样的命和运气。买股票基金靠的不只有命运和运气,更多靠的是长期的经验和对股票基金数据的分析,今天我们使用scrapy框架来js逆向爬取某证信数据平台的国内指数成分股行情数据。
我被狗咬了
2021/11/16
1.2K0
聊聊逆向爬取数据
Python爬虫:10行代码真正实现“可见即可爬”
因为关于爬虫知识的学习起源于想要获得《机器学习》预测模型的数据集; 从这个层面上说,本文将是后续大量数据预测文章等的开篇之作。 感兴趣的小伙伴们点个关注,一起学习交流吖 ~ ~ ~
荣仔_最靓的仔
2021/02/02
1.3K0
Python爬虫:10行代码真正实现“可见即可爬”
GNE v0.1正式发布:4行代码开发新闻网站通用爬虫
GNE(GeneralNewsExtractor)是一个通用新闻网站正文抽取模块,输入一篇新闻网页的 HTML, 输出正文内容、标题、作者、发布时间、正文中的图片地址和正文所在的标签源代码。GNE在提取今日头条、网易新闻、游民星空、 观察者网、凤凰网、腾讯新闻、ReadHub、新浪新闻等数百个中文新闻网站上效果非常出色,几乎能够达到100%的准确率。
青南
2020/02/11
1.5K0
50行Python代码,教你获取公众号全部文章
小詹说:我们平时阅读公众号的文章会遇到一个问题——阅读历史文章体验不好。的确如此,小詹自己也这么认为。所以今天分享的是好朋友 Python3X 的一篇干货分享,原文如下:
小小詹同学
2019/07/12
2.6K0
50行Python代码,教你获取公众号全部文章
三行代码,轻松实现 Scrapy 对接新兴爬虫神器 Playwright!
前段时间发布了一篇文章介绍一个新兴的类似 Selenium、Pyppeteer 的自动化爬取工具,叫做 Playwright,文章见:强大易用!新一代爬虫利器 Playwright 的介绍
崔庆才
2022/01/05
2.9K0
三行代码,轻松实现 Scrapy 对接新兴爬虫神器 Playwright!
【Python自动化】定时自动采集,并发送微信告警通知,全流程案例讲解!
如果您现在苦于每天繁琐、重复的数据采集工作,可尝试套用该自动化方案,节省人力,降本增效!
马哥python说
2024/03/22
6580
推荐阅读
相关推荐
一日一技:如何捅穿Cloud Flare的5秒盾
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验