Selenium验证码和reCAPTCHA绕过

在Selenium中使用最快的求解服务2Captcha绕过reCAPTCHAhCaptchaArkoseCloudflare Turnstile以及其他任何验证码。

无风险。 仅支付已解答验证码

快速入门
Selenium验证码求解器实践

简介:如何在Selenium中开始使用2Captcha反验证码API

  • 注册验证码解答服务
  • 增加资金并记下API密钥
  • 记下目标验证码的站点密钥
  • 将站点密钥和页面URL提交至2Captcha解答
  • 在适用元素上设置已解答验证码令牌
  • 提交表单
Selenium如何自动绕过验证码,Selenium reCAPTCHA求解器和验证码绕过
Selenium绕过reCAPTCHA

Selenium验证码绕过:它是如何工作的

2Captcha服务旨在自动识别并绕过验证码。

绕过过程如下:使用API,客户从验证码放置页面向服务传递一组必要的参数,在那里员工将解析它。之后,客户请求一组参数,必须将这些参数传递给相应的字段,以解析页面上的验证码。

验证码识别服务已完全自动化。

该服务的API可用于与PuppeteerSeleniumPlaywright一同工作。

使用Selenium自动化验证码

Selenium标志

Selenium自动化浏览器。就是这样!你怎么利用这种力量完全取决于你自己。它主要用于自动化网络应用程序的测试和解析。一些Selenium插件可以让你隐藏自动化发生的事实。在开发解析器时隐藏自动化的事实是很重要的,因为这将使浏览器看起来更像一个人,而不会被暴露。

Selenium绕过验证码

要在Selenium中绕过验证码,需要一项特殊的绕过服务。

查看手册学习如何使用Python模块与2CaptchaAPI以及Selenium库交互来执行网页抓取和测试。您可以使用多种编程语言,如JavaC#C++PHPPython以及Ruby。详细信息请阅读绕过说明。

手册: 如何在 Selenium 中解决验证码问题

以下是 https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.phpreCAPTCHA bypass 过程的逐步说明:

  • 安装所需组件
  • 在目标网页上找到 reCAPTCHA 的网站关键参数
  • 使用 API 解决验证码问题
  • 提交已解决的验证码

安装组件

您需要安装以下库:

要安装这些库,请运行以下命令:

python -m pip install 2captcha-python selenium webdriver-manager

接下来,你需要找到一个 "site key "参数,并创建一个 Python 文件来编写验证码解决代码。

找到网站密钥

网站密钥是谷歌给所有 reCAPTCHA 表单的唯一标识符,它能唯一标识验证码。要解决验证码问题,你需要向验证码发送网站密钥。

要找到网页的网站密钥,请按以下步骤操作:

Solve the сaptcha

接下来,编写 Selenium 代码,访问目标页面并使用 2Captcha 解决验证码问题。

下面的代码就能做到这一点,记得将 2CAPTCHA_API_KEY 替换为你的 2Captcha API 密钥,将 SITE_KEY 替换为你之前存储的网站密钥。

from selenium.webdriver.common.by import By
from twocaptcha import TwoCaptcha
from selenium.webdriver.chrome.service import Service as ChromeService
from webdriver_manager.chrome import ChromeDriverManager
from selenium import webdriver

# 实例化 WebDriver
driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()))

# 加载目标页面
captcha_page_url = "https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php"
driver.get(captcha_page_url)

# 解决验证码问题
print("Solving Captcha")
solver = TwoCaptcha("2CAPTCHA_API_KEY")
response = solver.recaptcha(sitekey='SITE_KEY', url=captcha_page_url)
代码 = response['code']
print(f "Successfully solved the Captcha. The solve code is {code}")

在这段代码中,我们使用 2captcha API 密钥初始化 TwoCaptcha 对象,并通过调用 recaptcha 方法传入网站密钥和当前页面 URL 来解决验证码问题。

recaptcha "方法会返回一个包含验证码的答案,并记录到控制台。

请注意,验证码的解决过程可能需要一些时间,所以请耐心等待

提交已解决的验证码

接下来,我们将找到 g-recaptcha-response 元素,将其值设置为已解决的验证码,然后提交表单。

# 设置验证码
recaptcha_response_element = driver.find_element(By.ID, 'g-recaptcha-response')
driver.execute_script(f'arguments[0].value = "{code}";', recaptcha_response_element)

# 提交表单
submit_btn = driver.find_element(By.CSS_SELECTOR, 'button[type="submit"]')
submit_btn.click()

# 暂停执行,以便在关闭驱动程序前看到提交后的成功界面
输入("按回车键继续")
driver.close()

最终代码

以下是本教程使用 API 解决验证码问题的最终代码。

from selenium.webdriver.common.by import By
from twocaptcha import TwoCaptcha
from selenium.webdriver.chrome.service import Service as ChromeService
from webdriver_manager.chrome import ChromeDriverManager
from selenium import webdriver

# 实例化 WebDriver
driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()))

# 加载目标页面
captcha_page_url = "https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php"
driver.get(captcha_page_url)

# 解决验证码问题
print("Solving Captcha")
solver = TwoCaptcha("2CAPTCHA_API_KEY")
response = solver.recaptcha(sitekey='SITE_KEY', url=captcha_page_url)
代码 = response['code']
print(f "Successfully solved the Captcha. The solve code is {code}")

# 设置已解决的验证码
recaptcha_response_element = driver.find_element(By.ID, 'g-recaptcha-response')
driver.execute_script(f'arguments[0].value = "{code}";', recaptcha_response_element)

# 提交表单
submit_btn = driver.find_element(By.CSS_SELECTOR, 'button[type="submit"]')
submit_btn.click()

# 暂停执行,以便在关闭驱动程序前查看提交后的屏幕情况
输入("按回车键继续")
driver.close()

2CAPTCHA_API_KEYSITE_KEY 替换为它们的值,然后运行代码,验证码将被破解,你将看到成功界面。

reCAPTCHA标志

Selenium Google reCAPTCHA绕过

CAPTCHA是阻止机器人程序进入的重要网络抓取障碍。2Captcha是最佳reCAPTCHA求解器。该服务允许您绕过任何类型的Google reCAPTCHA,包括reCAPTCHA 3reCAPTCHA 2版本。

详细信息请阅读绕过说明。

Selenium Google reCAPTCHA绕过手册
C#标志

C#验证码绕过代码示例

集成C#库以自动求解验证码。API可以集成到任何脚本中。CSharp包便于与2Captcha验证码求解服务的API集成,可绕过reCAPTCHAArkose captcha并解答任何其他验证码。API可以与Selenium结合使用。

C#验证码求解器
Java标志

Java验证码绕过代码示例

集成一个Java库,用于快速绕过验证码验证。API可以与Selenium结合使用。

Java验证码求解器
Ruby标志

Ruby验证码绕过代码示例

集成一个Ruby gem,用于自动绕过验证码挑战。API可以与Selenium结合使用。

Ruby验证码求解器

最佳Selenium反验证码服务

Selenium是一个免费的自动化测试框架,用于验证跨不同浏览器和平台的网络应用程序。该工具由测试人员和解析器使用。

您可以将2Captcha求解器拓展与Selenium配合使用来解决验证码问题。根据CaptchaTheCat分析,2Captcha拥有最好的服务。

captchathecat
2Captcha求解器拓展与Selenium配合使用来绕过验证码