如何使用 Selenium 和 Python 绕过 Google CAPTCHA?

32 python selenium captcha recaptcha selenium-chromedriver

如何使用 Selenium 和 Python 绕过 Google CAPTCHA?

当我尝试抓取某些东西时,Google 会给我一个 CAPTCHA。我可以使用 Selenium Python 绕过 Google CAPTCHA 吗?

例如,它是 Google reCAPTCHA。您可以通过此链接查看此 CAPTCHA:https : //www.google.com/recaptcha/api2/demo

Deb*_*anB 40

要开始使用SeleniumPython客户端,您应该避免解决/绕过 Google CAPTCHA


Selenium使浏览器自动化。现在,你想用这种能力实现什么完全取决于个人,但主要是为了通过浏览器客户端自动化 Web 应用程序以进行测试,粗略地说,它当然不限于此。


验证码

另一方面,CAPTCHA(首字母缩写词是...Completely Automated Public Turing test to tell Computers and Humans Apart...)是一种用于计算的挑战-响应测试,用于确定用户是否是人类。

因此,SeleniumCAPTCHA服务于两个完全不同的目的,理想情况下不应用于实现任何相关的任务。

话虽如此,reCAPTCHA可以轻松检测网络流量并将您的程序识别为Selenium驱动的机器人


通用解决方案

但是,有一些通用方法可以避免在网页抓取时被检测到:


这个用例

但是,在几个用例中,我们能够使用SeleniumreCAPTCHA进行交互,您可以在以下讨论中找到更多详细信息:


参考

您可以在以下位置找到一些相关讨论:


tl; 博士

  • 您能详细说明一下“传统视口”吗?它指的是什么? (3认同)
  • 将我的视口更改为 100,100 对我有用。 (2认同)

Had*_*san 13

为了在抓取谷歌时绕过验证码,您必须手动解决验证码并导出谷歌提供给您的 cookie。现在,每次打开 Selenium WebDriver 时,请确保添加导出的 cookie。GOOGLE_ABUSE_EXEMPTION cookie 是您要查找的 cookie,但为了安全起见,我会保存所有 cookie。

如果您想在抓取中增加一层稳定性,您应该导出多个 cookie,并让您的脚本在每次 ping 谷歌时随机选择其中一个。

这些 cookie 的有效期很长,因此您无需每天都获取新的 cookie。

有关在 Python 和 Selenium 中保存和加载 cookie 的帮助,您应该查看此答案:如何使用 Python + Selenium WebDriver 保存和加载 cookie


归档时间:

查看次数:

92888 次

最近记录:

4 年,4 月 前