Skip to content
穿云API

穿云API

绕过Cloudflare Task/Turnstile/JS Challenge挑战

  • 穿云API
  • 产品
    • 绕过Cloudflare
    • 智能轮换代理IP
    • 数据代采集定制
  • 套餐价格
  • 穿云AP文档
    • API文档
    • 代码生成器
    • 穿云API常见问题
  • 提取IP代理
    • 提取API
    • IP代理常见问题
  • 使用教程
  • 合作伙伴
  • 联系我们
  • 登录
  • 注册
  • Toggle search form
201524351

穿云API > Chatgpt Cloudflare验证 > Python Selenium如何绕过cloudflare抓取网页

Python Selenium如何绕过cloudflare抓取网页

Posted on 2023年5月25日2024年4月30日 By 穿云API

和许多网站一样,Cloudflare也会对访问进行检测,看是否由Selenium bot发起。这种检测主要关注是否存在特有的js变量,如包含”selenium”、”webdriver”的变量,或者包含”$cdc_”、”$wdc_”的文件变量。

每个驱动程序的检测机制可能不同,以下的解决方案主要针对chromedriver。

1、使用Undetected-chromedriver 这是一个非常便利的包,可以直接通过pip进行安装。然后像下面这样初始化驱动程序,之后的操作就像常规的Selenium使用一样。

pythonCopy code
import undetected_chromedriver as uc
driver = uc.Chrome()
driver.get('https://nowsecure.nl')

2、直接修改chromedriver可执行文件 你可以将key变量更改为任意不包含”cdc”的字符。

javascriptCopy code
/**
 * Returns the global object cache for the page.
 * @param {Document=} opt_doc The document whose cache to retrieve. Defaults to
 *     the current document.
 * @return {!Cache} The page's object cache.
 */
function getPageCache(opt_doc, opt_w3c) {
  var doc = opt_doc || document;
  var w3c = opt_w3c || false;
  // |key| is a long random string, unlikely to conflict with anything else.
  var key = '$cdc_asdjflasutopfhvcZLmcfl_';
  if (w3c) {
    if (!(key in doc))
      doc[key] = new CacheWithUUID();
    return doc[key];
  } else {
    if (!(key in doc))
      doc[key] = new Cache();
    return doc[key];
  }
}

这两种方法在本质上没有太大的区别。实际上,undetected-chromedriver在启动chromedriver时会应用一个补丁,完成了修改key的步骤。

pythonCopy code
def patch_exe(self):
    """
    Patches the ChromeDriver binary
    :return: False on failure, binary name on success
    """
    logger.info("patching driver executable %s" % self.executable_path)
 
    linect = 0
    replacement = self.gen_random_cdc() #这里修改了cdc的名称
    with io.open(self.executable_path, "r+b") as fh:
        for line in iter(lambda: fh.readline(), b""):
            if b"cdc_" in line:
                fh.seek(-len(line), 1)
                newline = re.sub(b"cdc_.{22}", replacement, line)
                fh.write(newline)
                linect += 1 

3、使用穿云API,您可以轻松地绕过Cloudflare的机器人验证,即使您需要发送10万个请求,也不必担心被识别为抓取者。

一个穿云API即可突破所有反Anti-bot机器人检查,轻松绕过Cloudflare、CAPTCHA验证,WAF,CC防护,并提供了HTTP API和Proxy,包括接口地址、请求参数、返回处理;以及设置Referer,浏览器UA和headless状态等各浏览器指纹设备特征。

API文档 – 穿云API & 用户控制台 (cloudbypass.com)

Post Views: 2,397
Chatgpt Cloudflare验证, Chatgpt 绕过 Cloudflare, Cloudflare 5秒盾

文章导航

Previous Post: 绕过CloudFlare安全防护,用一个穿云API就够了。
Next Post: CloudScraper是Web爬虫项目必须吗?

相关文章

反反爬虫是什么?如何利用穿云API来破解反爬虫? Chatgpt 绕过 Cloudflare
2023051955 解决Cloudflare返回403错误的有效方法 Chatgpt Cloudflare验证
image 2023 09 19 19 04 56 动态住宅IP:网络隐私保护的利器 Chatgpt 绕过 Cloudflare
7 2 爬虫动态IP代理:绕过封锁和防爬虫机制 Chatgpt 绕过 Cloudflare
教育培训网站数据采集频繁被验证代理API能解决这个问题吗 Cloudflare 5秒盾
3 5 穿云API动态IP流量包:OkCupid数据采集的最佳解决方案 Chatgpt Cloudflare验证

特别提醒

本博客内的文章不作为穿云API的功能展示和业务操作指导使用。

具体请查看穿云API详细说明文档和代码示例:查看穿云API文档

Telegram:@cloudbypasscom
联系我们领取免费试用

浏览最多的文章

  • 为什么问题总是一个接一个出现,而不是单点爆发?
  • 穿云API视角:Cloudflare 人机验证失败的定位步骤
  • Cloudflare JavaScript Challenge 触发机制 加载失败原因与修复建议
  • 多节点协同访问为什么能减少中断?请求在不同出口之间如何被分配?
  • 系统具备自适应能力后,面对复杂场景为什么更容易保持成功率?
  • 从多语言 SDK 到高并发直取源码,采集系统的接入成本是如何被压缩的?
  • 程序没有报错,但返回结果明显不对,这一步最容易被忽略
  • 明明接口返回了 200,但数据却没更新,是哪一步被跳过了?
  • 请求次数一多就开始变慢,这种性能拐点通常最早出现在哪里?
  • 全球动态代理同时调度时如何避免互相污染?地区节点分组、轮换频率和失败隔离规则怎么定?
  • 明明没有改动任何规则配置,cloudflare 却开始对同类访问给出完全不同的处理结果,这种变化通常由什么触发
  • 在持续运行的访问场景中 cloudflare 行为逐渐收紧却没有明确告警这类隐性变化该如何提前识别
  • scrapy 框架在高频抓取时如何避免触发拦截?请求节奏、重试策略与代理配置该怎么取舍?
  • 穿云API视角:Cloudflare 503 间歇性出现的排查清单
  • Cloudflare 防采集策略升级:请求特征、频率控制与稳定访问建议

最新文章

  • 架构解密:大模型接口封装中绕过 claude.ai 的Cloudflare验证的技术演进与实践
  • 构建高可用 claude.ai 镜像代理:攻克 Cloudflare 盾与网络流阻断的实战方案
  • 逆向攻克 Claude.ai 屏蔽墙:针对 Cloudflare 五秒盾与 Turnstile 挑战的高级自动化采集解决方案
  • 围绕 chordify.net 的自动化访问与稳定解析方案实践总结
  • Cloudflare 站点间歇性白屏 资源加载 缓存与回源链路排查

文章目录

  • 1、使用Undetected-chromedriver 这是一个非常便利的包,可以直接通过pip进行安装。然后像下面这样初始化驱动程序,之后的操作就像常规的Selenium使用一样。
  • 2、直接修改chromedriver可执行文件 你可以将key变量更改为任意不包含”cdc”的字符。
  • 3、使用穿云API,您可以轻松地绕过Cloudflare的机器人验证,即使您需要发送10万个请求,也不必担心被识别为抓取者。

穿云API

穿云API可轻松跳过Cloudflare反爬虫验证、五秒盾页面真人机验证和WAF防火墙,支持绕过JS质询、Turnstile、Kasada和Incapsula等产品验证。并提供高速HTTP/Socks5的API提取IP代理(全球动态住宅IP/机房代理IP),以及设置Referer、浏览器UA和headless状态等浏览器指纹及设备特征。

关于我们

  • 联系我们
  • 服务条款
  • 隐私政策
  • 使用教程
  • 海外动态IP

产品介绍

  • API文档
  • 套餐定价
  • 绕过Cloudflare
  • 爬虫IP代理
  • 动态住宅IP

联系我们

Telegram:@cloudbypasscom
联系我们领取免费试用

突破所有反Anti-bot机器人检查,轻松绕过cloudflare验证、CAPTCHA验证,WAF,CC防护和Cloudflare爬虫验证,并提供了HTTP API和Proxy,包括接口地址、请求参数、返回处理;以及Cloudflare反爬虫设置Referer,浏览器UA和headless状态等各浏览器指纹设备特征。

注:穿云代理IP仅提供国外动态代理IP,在中国大陆IP环境下直连时可能会出现不稳定的情况,但您可以通过以下两种方式解决:一是将其部署在香港等境外服务器上使用;二是在本地电脑端开启TUN模式的全局代理进行中转。