使用 selenium 和 python 提交 reCAPTCHA v2 - 没有表单提交按钮
Submitting reCAPTCHA v2 with selenium and python - no form submit button
所以我最近注册了反验证码并一直在测试 https://github.com/ad-m/python-anticaptcha/blob/master/examples/recaptcha_selenium.py 脚本。
我无法通过没有提交按钮(隐藏或可见)的 reCAPTCHA,也没有明确的提交验证方式。我用过firefox的反验证码插件,所以我知道是可以通过的。但是我坚持自己手动做这个。
我认为 会是一个有用的答案,但没有深入。我能够获得 job.get_solution_response() 令牌并将其输入所需的 textfield
,但我无法提交 "form."
有人成功过吗?我也希望在浏览器的无头版本中执行此操作。基于无头与非无头的解决方案会有所不同吗?
顺便说一句,realtor(dot)com 是我遇到问题的网站。如果我对 post 这个站点不满意,请告诉我,以便我将其删除。
尝试将 \n 或 Keys.Enter 的键发送到文本字段。
这是我在我的项目中的解决方案。
这也是通用的
我回到网站的源代码,发现他们使用一个函数作为回调来验证...
我看到他们正在使用一个名为 solvedCaptcha
的函数并注入一个变量名 payload
。所以我是这样解决的:
注意:确保驱动程序当前位于 reCAPTCHA 页面上。
driver.execute_async_script("var payload = '<enter the job.get_solution_response() here>'; solvedCaptcha(payload);")
此异步脚本然后调用页面的验证并重新加载被阻止的 window。
注意:此验证码没有提交按钮,也未放置在表单中。因此,在驱动程序中的项目上使用 .submit()
将不起作用。
所以我最近注册了反验证码并一直在测试 https://github.com/ad-m/python-anticaptcha/blob/master/examples/recaptcha_selenium.py 脚本。
我无法通过没有提交按钮(隐藏或可见)的 reCAPTCHA,也没有明确的提交验证方式。我用过firefox的反验证码插件,所以我知道是可以通过的。但是我坚持自己手动做这个。
我认为 textfield
,但我无法提交 "form."
有人成功过吗?我也希望在浏览器的无头版本中执行此操作。基于无头与非无头的解决方案会有所不同吗?
顺便说一句,realtor(dot)com 是我遇到问题的网站。如果我对 post 这个站点不满意,请告诉我,以便我将其删除。
尝试将 \n 或 Keys.Enter 的键发送到文本字段。 这是我在我的项目中的解决方案。 这也是通用的
我回到网站的源代码,发现他们使用一个函数作为回调来验证...
我看到他们正在使用一个名为 solvedCaptcha
的函数并注入一个变量名 payload
。所以我是这样解决的:
注意:确保驱动程序当前位于 reCAPTCHA 页面上。
driver.execute_async_script("var payload = '<enter the job.get_solution_response() here>'; solvedCaptcha(payload);")
此异步脚本然后调用页面的验证并重新加载被阻止的 window。
注意:此验证码没有提交按钮,也未放置在表单中。因此,在驱动程序中的项目上使用 .submit()
将不起作用。