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,342
Chatgpt Cloudflare验证, Chatgpt 绕过 Cloudflare, Cloudflare 5秒盾

文章导航

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

相关文章

跨境访问结果总不一致?代理API能否提升页面完整度和稳定性 Cloudflare 5秒盾
202605180175 1 Opensea数据采集:突破Cloudflare限制的网络爬虫技巧 Chatgpt 绕过 Cloudflare
健康监测平台数据抓取总被Cloudflare拦住代理API要怎么配置 Cloudflare 5秒盾
2015243547 1 如何在Python中跳过Cloudflare防护:绕过Cloudflare的访问限制 Chatgpt Cloudflare验证
image 57 优质住宅代理IP池:穿云代理的爬虫解决方案 Chatgpt Cloudflare验证
访问Radaris频繁跳出验证提示?代理API配置要注意哪些参数 Cloudflare 5秒盾

特别提醒

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

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

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

浏览最多的文章

  • 自动化访问总被挑战拦下?行为模型和请求特征是如何影响通过率的?
  • 智能代理调度为什么能让访问变稳定?不同节点切换策略的差别到底在哪?
  • 请求稳定性提升后,长时间采集任务的中断率为什么能明显下降?
  • Rotating Proxy 的切换方式不同,访问稳定性为什么会呈现完全不一样的结果?
  • Anti-Bot Verification 频率突然增加,程序访问模式是否需要跟着调整?
  • Session Persistence 出现波动时,请求成功率为何会立刻受到影响?
  • 多节点协同访问为什么能减少中断?请求在不同出口之间如何被分配?
  • 自动失败重试机制是如何让长任务不间断运行的?内部策略有什么特点?
  • 多语言 SDK 接入后,访问表现为什么会更一致?背后的逻辑有哪些差异?
  • 浏览器指纹与请求头配置改变时,系统会怎样重新判断访问可信度?
  • API 模式和代理模式有什么区别?两种方式在不同场景下表现差异大吗?
  • Cloudflare 的风险评分类算法调整后,自动化任务最先会受到哪些影响?
  • API 模式和代理模式有什么区别?两种方式在不同场景下表现差异大吗?
  • 当 Cloudflare 开启更严格的挑战时,代理切换会不会让访问成功率大幅波动?
  • psacard.com 有时出现访问异常,这类站点一般会重点检查哪些访问信号?

最新文章

  • 请求稳定性提升后,长时间采集任务的中断率为什么能明显下降?
  • 自动化访问总被挑战拦下?行为模型和请求特征是如何影响通过率的?
  • 智能代理调度为什么能让访问变稳定?不同节点切换策略的差别到底在哪?
  • Rotating Proxy 的切换方式不同,访问稳定性为什么会呈现完全不一样的结果?
  • Session Persistence 出现波动时,请求成功率为何会立刻受到影响?

文章目录

  • 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模式的全局代理进行中转。