如何使用 Selenium [Python] 配合 CapSolver 扩展程序解决 reCAPTCHA V2

Ethan Collins
Pattern Recognition Specialist
05-Nov-2025

在自动化测试和数据抓取领域,验证码无疑是最大的障碍之一。特别是谷歌的reCaptcha v2,往往对许多自动化工具来说都过于复杂。
然而,借助CapSolver浏览器扩展和强大的Selenium库,解决这个问题变得简单直接。本文详细介绍了如何将CapSolver扩展集成到Python的Selenium项目中,以实现reCaptcha v2的自动识别和绕过。
为什么选择CapSolver + Selenium组合?
开发人员在处理验证码时通常面临多种选择。以下是CapSolver扩展相比传统方法的优势:
| 特性 | CapSolver浏览器扩展 | 传统图像识别/机器学习解决方案 | 纯API解决方案 |
|---|---|---|---|
| 集成难度 | 极低。只需加载扩展;无需修改核心业务逻辑。 | 极高。需要大量数据进行模型训练,维护成本高。 | 中等。需要手动解析网站参数(sitekey、url)并注入结果。 |
| 适用范围 | 适用于多种类型,包括reCaptcha v2/v3、AWS WAF、Cloudflare Turnstile和挑战等。 | 仅限特定验证码类型;通用性差。 | 适用于多种类型,但需要为每种类型编写不同的解析逻辑。 |
| 自动化程度 | 完全自动。扩展在后台自动检测并解决验证码。 | 半自动。需要额外代码进行截图、调用模型和注入结果。 | 半自动。需要代码获取参数、调用CapSolver API并注入结果。 |
| 反爬虫风险 | 低。模拟真实用户浏览器行为,不易被检测到。 | 高。行为模式可能过于机械,容易被反爬虫机制标记。 | 中等。令牌注入相对安全,但仍需处理浏览器指纹问题。 |
CapSolver扩展的优势在于其无缝集成和全自动解决能力,大大简化了在Selenium自动化流程中处理验证码的复杂性。
1. 环境设置:安装Selenium和浏览器驱动
首先,确保Selenium库已安装在您的Python环境中。
bash
pip install selenium
此外,您还需要为所选浏览器下载并配置相应的驱动(例如,Chrome使用ChromeDriver,Firefox使用GeckoDriver)。请确保驱动版本与浏览器版本兼容。
2. 配置CapSolver浏览器扩展
CapSolver扩展是实现自动解码的关键。
步骤2.1:下载并解压扩展
从CapSolver GitHub仓库下载最新版本的扩展文件,并将其解压到项目根目录下的./CapSolver.Browser.Extension文件夹中。
步骤2.2:设置API密钥
扩展的核心配置文件位于./CapSolver.Browser.Extension/assets/config.json中,您需要在此处输入您的CapSolver API密钥。
提示: 您可以在CapSolver用户仪表板上找到您的API密钥。
json
{
"apiKey": "您的CapSolver API密钥",
"useCapsolver": true,
"useProxy": false,
// ...其他配置项
"enabledForRecaptcha": true,
"reCaptchaMode": "token"
// ...
}
您可以根据需要调整其他配置,例如启用代理(useProxy)或更改reCaptcha的解决模式(reCaptchaMode)。CapSolver官方文档提供了更详细的配置说明;我们建议参考CapSolver开发者设置指南。
3. 编写Selenium自动化代码
现在,我们将编写Python代码来启动Selenium并加载CapSolver扩展。
步骤3.1:加载扩展
在启动ChromeDriver时,我们需要使用add_argument方法加载扩展的路径。
python
import os
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
def solve_recaptcha_with_capsolver():
# 1. 获取扩展的绝对路径
# 确保路径正确指向您解压的CapSolver.Browser.Extension文件夹
extension_path = os.path.abspath('./CapSolver.Browser.Extension')
# 2. 配置Chrome选项
chrome_options = Options()
# 关键步骤:加载CapSolver扩展
chrome_options.add_argument(f'--load-extension={extension_path}')
# 3. 启动WebDriver
# 确保您的ChromeDriver路径已添加到系统环境变量中
driver = webdriver.Chrome(options=chrome_options)
# 4. 导航到reCaptcha演示页面
# 这里我们使用官方的Google reCaptcha v2演示页面进行测试
driver.get('https://www.google.com/recaptcha/api2/demo')
print("浏览器已启动。CapSolver扩展正在后台自动解决reCaptcha...")
# 5. 等待验证码被解决
# CapSolver扩展在后台自动解决验证码,并在成功时注入令牌。
# 我们可以等待页面上某个在验证码解决后可点击的元素,
# 例如此处的提交按钮,以确认过程完成。
try:
# 等待提交按钮可点击,通常意味着reCaptcha已被解决
WebDriverWait(driver, 30).until(
EC.element_to_be_clickable((By.ID, 'recaptcha-demo-submit'))
)
print("reCaptcha成功解决!")
# 此时,您可以继续后续的表单提交或其他自动化操作
# driver.find_element(By.ID, 'recaptcha-demo-submit').click()
except Exception as e:
print(f"超时或发生错误:{e}")
finally:
# 6. 关闭浏览器
# driver.quit()
# 为便于观察结果,此处未关闭浏览器;您可以手动关闭
print("请手动关闭浏览器窗口以结束程序。")
if __name__ == "__main__":
solve_recaptcha_with_capsolver()
步骤3.2:运行代码
运行上述Python脚本。当浏览器启动并加载演示页面时,CapSolver扩展将自动检测reCaptcha v2并开始解决。一旦成功解决,WebDriverWait将通过,您的自动化流程可以继续执行后续操作,例如提交表单。
常见问题(FAQ)
| 问题 | 回答 |
|---|---|
| CapSolver扩展支持哪些浏览器? | CapSolver扩展主要支持基于Chromium的浏览器(如Chrome、Edge)和Firefox。在Selenium中,我们通常使用ChromeDriver或GeckoDriver来加载扩展。 |
| 如何确认CapSolver扩展是否正常工作? | 检查config.json中的apiKey是否正确。浏览器启动后,您可以通过检查扩展的日志或控制台输出来确认是否成功检测并解决了验证码。如果成功,reCaptcha复选框将显示绿色对勾。 |
| 如果我要解决hCaptcha或reCaptcha v3呢? | CapSolver扩展功能多样。您只需确保config.json中相应的配置项(如enabledForRecaptchaV3或enabledForhCaptcha)设置为true,扩展将自动处理。代码逻辑保持不变。 |
| 是否可以使用CapSolver API而不是扩展? | 当然可以。CapSolver提供强大的API接口。使用API需要您手动解析网站的sitekey和URL,调用API获取令牌,最后通过JavaScript将令牌注入表单。扩展的优势在于它为您处理了所有这些繁琐的步骤。 |
结论
通过将CapSolver浏览器扩展与Selenium Python结合使用,我们成功克服了自动化项目中的reCaptcha v2障碍。由于其模拟真实用户行为的特性,这种方法不仅高效,还显著降低了被目标网站反爬虫机制检测的风险。
现在,您可以将精力集中在更重要的自动化任务上,让CapSolver来处理验证码挑战。
领取您的CapSolver优惠码
不要错过进一步优化操作的机会!在充值CapSolver账户时使用优惠码CAPN,每次充值可额外获得5%的奖励,无上限。立即访问CapSolver仪表板领取您的优惠!
合规声明: 本博客提供的信息仅供参考。CapSolver 致力于遵守所有适用的法律和法规。严禁以非法、欺诈或滥用活动使用 CapSolver 网络,任何此类行为将受到调查。我们的验证码解决方案在确保 100% 合规的同时,帮助解决公共数据爬取过程中的验证码难题。我们鼓励负责任地使用我们的服务。如需更多信息,请访问我们的服务条款和隐私政策。
更多

使用 JavaScript 解决 reCAPTCHA:完整教程
尽管reCAPTCHA能有效保护网络内容,但它有时会阻碍合法活动,例如研究、数据分析或其他合规驱动的自动化任务,这些任务涉及与网络服务进行交互。

Anh Tuan
02-Dec-2025

如何用 Python 解决 reCAPTCHA v3 企业版
reCAPTCHA v3 企业版 Python 指南,包含高分技巧、代理选项和 CapSolver 集成,以实现稳定 0.7–0.9 的结果。

Lucas Mitchell
02-Dec-2025

如何使用 Node.JS 解决 reCAPTCHA v3
在本文中,我们将向您展示如何使用 Node.JS 解决 reCaptcha v3。

Adélia Cruz
28-Nov-2025

如何使用Python解决reCAPTCHA v3
学习使用 Python 和 CapSolver 解决 Google 的 reCAPTCHA v3,获得高分,并与自动化工作流集成。

Emma Foster
28-Nov-2025

CapSolver 验证码解决工具 Chrome 扩展程序
CapSolver的人工智能Chrome扩展程序以高精度和极简设置自动解决CAPTCHA——非常适合自动化。

Emma Foster
27-Nov-2025

通过最高令牌分数0.7-0.9解决reCaptcha v3 - 详解
通过Capsolver轻松解决reCaptcha v3,获得0.7到0.9之间的分数,用于可靠且高效的数字验证

Emma Foster
26-Nov-2025


