产品集成资源文档定价
立即开始

© 2026 CapSolver. All rights reserved.

联系我们

Slack: lola@capsolver.com

产品

  • reCAPTCHA v2
  • reCAPTCHA v3
  • Cloudflare Turnstile
  • Cloudflare Challenge
  • AWS WAF
  • 浏览器插件
  • 更多验证码类型

集成

  • Selenium
  • Playwright
  • Puppeteer
  • n8n
  • 合作伙伴
  • 查看所有集成

资源

  • 推荐返佣系统
  • 官方文档
  • API 参考
  • 博客
  • 常见问题 (FAQ)
  • 术语表
  • 系统状态

法律声明

  • 服务条款
  • 隐私政策
  • 退款政策
  • 请勿出售我的信息
博客/All/如何在 Puppeteer 中使用 CapSolver 解决验证码
Jul17, 2023

如何在 Puppeteer 中使用 CapSolver 解决验证码

Ethan Collins

Ethan Collins

Pattern Recognition Specialist

🎯 概述

本教程将指导您如何使用 CapSolver 在 Puppeteer 中解决 Google reCaptchas。

CapSolver 是一个验证码解决服务,帮助您解决验证码。

我们使用人工智能驱动的验证码解决算法,从而实现更快的解决速度和显著降低的成本,提供出色的开发体验。

目标是使用 CapSolver 解决位于 recaptcha-demo.appspot.com 的验证码。

验证码表单

在本教程中,我们将采取以下步骤来解决上述验证码:

  1. 安装所需的依赖项。
  2. 找到 验证码表单 的站点密钥。
  3. 设置 CapSolver。
  4. 解决验证码。

📦 安装所需依赖项

开始之前,我们需要安装以下本教程所需的依赖项:

  • capsolver-python:用于与 CapSolver API 轻松集成的官方 Python SDK。
  • pyppeteer:pyppeteer 是 Puppeteer 的 Python 版本。

通过运行以下命令安装这些依赖项:

Copy
python -m pip install pyppeteer capsolver-python

现在,创建一个名为 main.py 的文件,我们将在此文件中编写用于解决验证码的 Python 代码。

bash Copy
touch main.py

🔑 获取验证码表单的站点密钥

站点密钥是由 Google 提供的唯一标识符,用于唯一标识每个验证码。

要解决验证码,需要将站点密钥发送到 CapSolver。

让我们按照以下步骤找到 验证码表单 的站点密钥:

  1. 访问 验证码表单。
    验证码表单

  2. 按下 Ctrl/Cmd + Shift + I 打开 Chrome 开发者工具。

  3. 转到 Elements 选项卡并搜索 data-sitekey,复制属性的值。

站点密钥
  1. 将站点密钥存储在安全的地方,因为它将在后面部分提交验证码到 CapSolver 时使用。

🤖 设置 CapSolver

要使用 CapSolver 解决验证码,您需要创建 CapSolver 账户,向账户中充值,并获取 API 密钥。按照以下步骤设置您的 CapSolver 账户:

  1. 访问 capsolver.com 注册 CapSolver 账户。
注册
  1. 使用 PayPal、加密货币或其他列出的支付方式向 CapSolver 账户充值。请注意,最低存款金额为 6 美元,并且可能有其他税费。
充值
  1. 现在,复制 CapSolver 提供的 API 密钥并安全存储以备以后使用。
存储 API 密钥

💡 解决验证码

现在,我们将使用 CapSolver 解决验证码。整个过程包括三个步骤:

  1. 使用 pyppeteer 启动浏览器并访问验证码页面。
  2. 使用 CapSolver 解决验证码。
  3. 提交验证码响应。

阅读以下代码片段以了解这些步骤。
启动浏览器并访问验证码页面:

python Copy
# 启动浏览器。
browser = await launch({'headless': False})

# 加载目标页面。
captcha_page_url = "https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php"
page = await browser.newPage()
await page.goto(captcha_page_url)

使用 CapSolver 解决验证码:

python Copy
# 使用 CapSolver 解决 reCAPTCHA。
capsolver = RecaptchaV2Task("YOUR_API_KEY")

site_key = "6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9"
task_id = capsolver.create_task(captcha_page_url, site_key)
result = capsolver.join_task_result(task_id)

# 获取解决的 reCAPTCHA 代码。
code = result.get("gRecaptchaResponse")

在表单上设置解决的验证码并提交:

python Copy
# 在表单上设置解决的 reCAPTCHA 代码。
recaptcha_response_element = await page.querySelector('#g-recaptcha-response')
await page.evaluate(f'(element) => element.value = "{code}"', recaptcha_response_element)

# 提交表单。
submit_btn = await page.querySelector('button[type="submit"]')
await submit_btn.click()

🚀 整合所有步骤

以下是本教程的完整代码,它将使用 CapSolver 解决验证码。

python Copy
import asyncio
from pyppeteer import launch
from capsolver_python import RecaptchaV2Task

# 以下代码使用 CapSolver 解决 reCAPTCHA v2 挑战。
async def main():
    # 启动浏览器。
    browser = await launch({'headless': False})

    # 加载目标页面。
    captcha_page_url = "https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php"
    page = await browser.newPage()
    await page.goto(captcha_page_url)

    # 使用 CapSolver 解决 reCAPTCHA。
    print("解决验证码")
    capsolver = RecaptchaV2Task("YOUR_API_KEY")

    site_key = "6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9"
    task_id = capsolver.create_task(captcha_page_url, site_key)
    result = capsolver.join_task_result(task_id)

    # 获取解决的 reCAPTCHA 代码。
    code = result.get("gRecaptchaResponse")
    print(f"成功解决 reCAPTCHA。解决代码是 {code}")

    # 在表单上设置解决的 reCAPTCHA 代码。
    recaptcha_response_element = await page.querySelector('#g-recaptcha-response')
    await page.evaluate(f'(element) => element.value = "{code}"', recaptcha_response_element)

    # 提交表单。
    submit_btn = await page.querySelector('button[type="submit"]')
    await submit_btn.click()

    # 暂停执行,以便在关闭驱动器前查看提交后的屏幕
    input("验证码提交成功。按 Enter 继续")

    # 关闭浏览器。
    await browser.close()

if __name__ == "__main__":
    asyncio.get_event_loop().run_until_complete(main())

将上述代码粘贴到您的 main.py 文件中。将 YOUR_API_KEY 替换为您的 API 密钥并运行代码。

您会注意到验证码将被解决,并且您将看到一个成功页面 🥳。

解决验证码成功页面

✅ 结论

祝贺您!您已经成功学习了如何使用 CapSolver 解决验证码。以下是本教程的关键要点:

  • CapSolver 提供了快速且成本效益高的验证码解决解决方案。
  • 解决验证码的一般过程包括:
    • 在 CapSolver 上创建账户并充值。
    • 找到目标验证码表单的站点密钥。
    • 将站点密钥和页面 URL 提交到 CapSolver 以解决验证码。
    • 在适当的元素上设置解决的验证码响应并提交表单。

感谢您的时间。🙏 我们祝愿您在自动化旅程中好运!🚀

🤔 常见问题解答

解决验证码的费用是多少?

我们使用人工智能驱动的验证码解决算法,而不是人工解决者,因此验证码解决成本显著降低。因此,我们的价格在市场上具有高度竞争力。

例如,解决 Google v2/v3 验证码的成本范围为 0.8 至 1 美元。

如需了解我们的定价详情,请访问我们的定价页面 这里。

我成功解决了位于 recaptcha-demo.appspot.com 的 reCaptcha,但当我尝试解决另一个 reCaptcha 时,它无法解决。为什么?

在本教程中,我们解决了 Google reCaptcha V2,但您的目标网站很可能使用的是 Google reCaptcha V3。

在解决 Google reCaptcha V3 时,确保提交验证码所使用的 IP 地址和用户代理与解决时使用的匹配非常重要。

一旦您拥有 住宅代理,您可以按照以下方式更新代码以成功解决验证码:

  • 在启动 Puppeteer 时使用代理。
python Copy
browser = await launch({'args': ['--proxy-server=ip:port'], 'headless': False})
  • 在创建代理任务后设置代理和用户代理如下:
python Copy
capsolver = RecaptchaV2Task("YOUR_API_KEY")

capsolver.set_proxy(proxy_address='proxy_ip', proxy_port='proxy_port', proxy_login='user', proxy_password='password')

browser_useragent = browser.userAgent()
capsolver.set_user_agent(browser_useragent)

查看更多

May 06, 2026

如何在无需浏览器的情况下解决AWS WAF挑战:技术指南

学习如何在无需浏览器的情况下解决 AWS WAF 挑战和验证码。使用 CapSolver 的 API 生成令牌并绕过 405 状态码。

Ethan Collins
Ethan Collins
Apr 30, 2026

在Linux上进行网页爬虫:工具、设置与实用指南

在Linux上使用Python、代理和验证码处理设置网络爬虫。涵盖Scrapy、Playwright、CapSolver和数据流水线的实用开发者指南。

Ethan Collins
Ethan Collins

目录

Apr 30, 2026

Cloudflare 错误 1020:访问被拒绝 在网络爬虫 & WAF 防护

了解Cloudflare错误1020访问被拒绝的触发原因,Web应用防火墙和机器人检测的工作原理,以及开发人员如何减少合法自动化工作流程中的误报。

Ethan Collins
Ethan Collins
Apr 29, 2026

2026年最佳Chrome自动验证码破解工具

发现2026年最好的自动CAPTCHA求解器Chrome扩展程序。按速度、支持的类型和隐私比较CapSolver、NopeCHA和SolveCaptcha,以找到最适合的。

Ethan Collins
Ethan Collins