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

Ethan Collins
Pattern Recognition Specialist
13-Oct-2025
如何使用 CapSolver 在 Puppeteer 中解决 CAPTCHA

? 概述
本教程将指导您通过 CapSolver 解决 Puppeteer 中的 Google reCAPTCHA。
CapSolver 是一个 CAPTCHA 解决服务,可帮助您解决 CAPTCHA。
我们使用人工智能驱动的 CAPTCHA 解决算法,从而实现更快的解决速度并显著降低成本,提供出色的开发人员体验。
我们的目标是使用 CapSolver 解决位于 recaptcha-demo.appspot.com,上的 CAPTCHA。

在本教程中,我们将采取以下步骤来解决上述 CAPTCHA:
- 安裝所需的依賴項。
- 找到 CAPTCHA 表单 的站點密鑰。
- 设置 CapSolver。
- 解决 CAPTCHA。
? 安装所需的依赖项
開始之前,我們需要爲本教程安裝以下依賴項:
- capsolver-python:CapSolver API 的官方 Python SDK,便于集成。
- pyppeteer:pyppeteer 是 Puppeteer 的 Python 版本。
通過運行以下命令安裝這些依賴項:
python -m pip install pyppeteer capsolver-python
現在,創建一個名爲 main.py
的文件,我们将在其中编写用于解决 CAPTCHA 的 Python 代码。
bash
touch main.py
? 获取 CAPTCHA 表单的站点密钥
站点密钥是由 Google 提供的独特标识符,唯一标识每个 CAPTCHA。
为了解决 CAPTCHA,需要将站点密钥发送到 CapSolver。
讓我們按照以下步驟找到 CAPTCHA 表单 的站點密鑰:
- 訪問 CAPTCHA 表单。

- 按下
Ctrl
/Cmd
+Shift
+I
打开 Chrome 开发者工具。 - 轉到
Elements
選項卡並搜索data-sitekey
。複制屬性的值。

- 将站点密钥存储在一个安全的地方,因为它将在稍后提交 CAPTCHA 到 CapSolver 时使用。
? 设置 CapSolver
要使用 CapSolver 解决 CAPTCHA,您需要创建一个 CapSolver 账户,向账户充值,并获取 API 密钥。按照以下步骤设置您的 CapSolver 账户:
- 訪問 capsolver.com 注册 CapSolver 账户。

- 使用 PayPal、加密货币或其他列出的支付方式向 CapSolver 账户充值。请注意,最低存款金额为 6 美元,并且会收取额外税费。

- 现在,复制 CapSolver 提供的 API 密钥并安全存储以备以后使用。

? 解决 CAPTCHA
现在,我们将使用 CapSolver 解决 CAPTCHA。整个过程包括三个步骤:
- 使用 pyppeteer 启动浏览器并訪問 CAPTCHA 页面。
- 使用 CapSolver 解决 CAPTCHA。
- 提交 CAPTCHA 响应。
閱讀以下代碼片段以了解這些步驟。
启动浏览器并訪問 CAPTCHA 页面:
python
# 启动浏览器。
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 解决 CAPTCHA:
python
# 使用 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")
设置解决的 CAPTCHA 并提交表单:
python
# 在表单上设置解决的 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 解决 CAPTCHA。
python
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("正在解决 CAPTCHA")
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("CAPTCHA 提交成功。按 Enter 键继续")
# 关闭浏览器。
await browser.close()
if __name__ == "__main__":
asyncio.get_event_loop().run_until_complete(main())
將上述代碼粘貼到您的 main.py
文件中。將 YOUR_API_KEY
替换为您的 API 密钥并运行代码。
您会发现 CAPTCHA 被成功解决,并被引导至成功页面 ?。

? 结论
祝贺!您已成功学习如何使用 CapSolver 解决 CAPTCHA。以下是本教程的关键学习点:
- CapSolver 提供了快速且成本效益高的 CAPTCHA 解决方案。
- 解决 CAPTCHA 的一般流程包括:
- 在 CapSolver 上创建账户并充值。
- 找到目标 CAPTCHA 表单的站點密鑰。
- 将站点密钥和页面 URL 提交给 CapSolver 以解决 CAPTCHA。
- 在适当元素上设置解决的 CAPTCHA 响应并提交表单。
感谢您的时间。? 祝您在自动化旅程中一切顺利!?
? 常见问题
解决 CAPTCHA 的费用是多少?
我们采用人工智能驱动的 CAPTCHA 解决算法,而不是人工解决者,从而显著降低了 CAPTCHA 解决成本。因此,我们的價格在市场中极具竞争力。
例如,解决 Google v2/v3 CAPTCHA 的费用范围为 0.8 美元至 1 美元。
如需详细了解我们的定价,请訪問我们的定价页面 這裏。
我能夠成功解決位于 recaptcha-demo.appspot.com 的 reCaptcha,但当我尝试解决另一个 reCaptcha 时,它无法被解决。为什么?
在本教程中,我们解决了 Google reCaptcha V2,但您的目标网站很可能使用的是 Google reCaptcha V3。
在解决 Google reCaptcha V3 时,确保提交 CAPTCHA 的 IP 地址和用户代理与解决时使用的匹配非常重要。
一旦您擁有 住宅代理,可以按照以下方式更新代码以成功解决 CAPTCHA:
- 在启动 Puppeteer 时使用代理。
python
browser = await launch({'args': ['--proxy-server=ip:port'], 'headless': False})
- 在創建代理任務後設置代理和用戶代理,如下所示:
python
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)
合規聲明: 本博客提供的信息仅供参考。CapSolver 致力于遵守所有适用的法律和法规。严禁以非法、欺诈或滥用活动使用 CapSolver 网络,任何此类行为将受到调查。我们的验证码解决方案在确保 100% 合規的同时,帮助解决公共数据爬取过程中的验证码难题。我们鼓励负责任地使用我们的服务。如需更多信息,请訪問我们的服务条款和隱私政策。
更多

如何在使用Python進行網絡爬蟲時解決驗證碼?
在本文中,我們將探討不同類型的CAPTCHA,討論使用Python進行網絡爬蟲時解決CAPTCHA的必要性,並提供一個使用Capsolver庫解決CAPTCHA的解決方案。

Ethan Collins
13-Oct-2025

如何在 Puppeteer 中使用 CapSolver 解决验证码
學習如何使用CapSolver在Puppeteer中解決驗證碼

Ethan Collins
13-Oct-2025

如何解决 Queue-it 验证码
Queue-it是一個虛擬等候室系統,用于在高峰時段管理網站流量。它有時會實施CAPTCHAs以驗證用戶是人類而非機器人。CAPSOLVER是一個自動化工具,可用于解決CAPTCHAs,可能幫助您更快地解決Queue-it的CAPTCHA。

Ethan Collins
13-Oct-2025
如何在進行網絡爬蟲時解決驗證碼?
在本文中,我們將探討爲什麽在進行網絡爬蟲時會遇到驗證碼,並討論解決網絡爬蟲過程中驗證碼的最佳解決方案,重點介紹Capsolver的集成。

Ethan Collins
13-Oct-2025

網頁抓取時解決驗證碼的最佳方法
在本文中,我們將探索在網頁爬取過程中遇到的驗證碼類型,並首先討論解決驗證碼的最佳方法。

Ethan Collins
13-Oct-2025

如何解决任何版本的reCAPTCHA Enterprise v2、v2不可见、v3、v3企业版0.9分
掌握使用CapSolver解決任何reCaptcha版本的技巧:本指南提供逐步教程,有效解決reCaptcha,確保每次都能獲得准確的結果。

Ethan Collins
11-Oct-2025