
Ethan Collins
Pattern Recognition Specialist

随着网络安全措施的不断发展,reCAPTCHA v3 Enterprise 已成为区分机器人和人类用户最复杂的方法之一。与 reCAPTCHA v2 不同,reCAPTCHA v3 在后台无形地运行,并评估用户互动以分配“类似机器人”或“类似人类”的评分。对于从事 Web 自动化的开发人员来说,解决 reCAPTCHA v3 Enterprise 可能具有挑战性,尤其是在尝试获得模仿人类行为的高分时。但是,使用 Python 和 Selenium 等合适的工具,这种挑战变得可以管理。
在本文中,我们将指导您设置环境,实施代码来解决 reCAPTCHA v3 挑战
reCAPTCHA v3 Enterprise 是 Google CAPTCHA 系统的更高级版本,旨在检测自动化流量,而不会中断用户体验。与以前的版本(例如 reCAPTCHA v2)不同,reCAPTCHA v2 需要用户点击图像或选中复选框,reCAPTCHA v3 在后台无形地运行,使用机器学习算法为每个用户操作分配风险评分。
reCAPTCHA v3 不向用户提供视觉挑战,而是分配 0 到 1 之间的分数,其中接近 0 的分数代表类似机器人的活动,而接近 1 的分数表示人类行为。网站可以使用此评分来确定是阻止还是允许特定操作。
与 reCAPTCHA v2 不同,reCAPTCHA v3 在后台无形地运行,可能不会显示任何可见的 CAPTCHA 挑战。但是,reCAPTCHA 小部件仍然存在于网页的后台。要检测它,请检查网页的 HTML 并查找包含 g-recaptcha 或引用 Google CAPTCHA API 的元素。
以下是如何识别 reCAPTCHA v3 的存在:
检查页面: 在浏览器中打开开发者工具(右键单击页面并选择“检查”)。在 HTML 源代码中查找以下内容:
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
自动化检测: 你可以使用 Selenium 以编程方式检测 reCAPTCHA:
try:
driver.find_element(By.XPATH, "//script[contains(@src, 'recaptcha/api.js')]")
print("检测到 reCAPTCHA v3")
except:
print("未检测到 reCAPTCHA")
在处理 reCAPTCHA v3 企业版等复杂 CAPTCHA 挑战时,你需要一个可靠的工具来帮助你克服网页自动化带来的困难,避免被标记为机器人。CapSolver 就是你的最佳选择。
领取你的 优惠代码,享受顶级验证码解决方案;CapSolver:WEBS。兑换后,每次充值即可获得额外 5% 奖励,无限期有效
在开始之前,请确保你具备以下条件:
要开始解决 reCAPTCHA v3 企业版,你需要安装 CapSolver 包。使用以下命令安装:
pip install capsolver
这个包允许你与 CapSolver API 交互,该 API 专为处理各种 CAPTCHA 挑战而设计,包括 reCAPTCHA v3 企业版。
如果你打算使用代理,以下是一个解决 reCAPTCHA v3 企业版并旨在获得 0.7 到 0.9 之间的类人分数的 Python 脚本:
import capsolver
from urllib.parse import urlparse
# 更改这些值
PROXY = "http://username:password@ip:port"
capsolver.api_key = "YourApiKey"
PAGE_URL = ""
PAGE_KEY = ""
PAGE_ACTION = ""
def solve_recaptcha_v3_enterprise(url, key, pageAction):
solution = capsolver.solve({
"type": "ReCaptchaV3EnterpriseTask",
"websiteURL": url,
"websiteKey": key,
"pageAction": pageAction,
"proxy": PROXY
})
return solution
def main():
print("Solving reCAPTCHA v3 Enterprise...")
solution = solve_recaptcha_v3_enterprise(PAGE_URL, PAGE_KEY, PAGE_ACTION)
token = solution["gRecaptchaResponse"]
print("Solution Token: ", token)
if __name__ == "__main__":
main()
http://username:password@ip:port。如果你使用代理,请确保它可靠,以避免被标记为可疑。"YourApiKey" 替换为你的实际 CapSolver API 密钥。你可以在登录 CapSolver 仪表板 后生成它。对于不使用代理的情况,脚本更简单。以下是如何在没有代理的情况下解决 reCAPTCHA v3 企业版:
import capsolver
from urllib.parse import urlparse
# 更改这些值
capsolver.api_key = "YourApiKey"
PAGE_URL = ""
PAGE_KEY = ""
PAGE_ACTION = ""
def solve_recaptcha_v3_enterprise(url, key, pageAction):
solution = capsolver.solve({
"type": "ReCaptchaV3EnterpriseTaskProxyless",
"websiteURL": url,
"websiteKey": key,
"pageAction": pageAction
})
return solution
def main():
print("正在解决 reCAPTCHA v3 企业版...")
solution = solve_recaptcha_v3_enterprise(PAGE_URL, PAGE_KEY, PAGE_ACTION)
token = solution["gRecaptchaResponse"]
print("解决方案令牌:", token)
if __name__ == "__main__":
main()
使用代理: 如果您从同一个 IP 发送多个请求,请考虑使用轮换代理,以最大程度地降低被标记为机器人的风险。
类人交互: reCAPTCHA v3 根据用户行为分配分数。为了提高获得类人分数的机会,请确保您的自动化交互(点击、滚动、导航)模拟真实的人类活动。在操作之间引入随机延迟可以使您的自动化看起来更自然。
优化分数为 0.7-0.9: CapSolver 旨在在解决 reCAPTCHA v3 时提供介于 0.7 到 0.9 之间的类人分数。有关如何优化您的自动化以获得此类分数的详细见解,请查看此 CapSolver 博客文章。