【问题标题】:How to click a button in Tor Browser with Selenium and python如何使用 Selenium 和 python 在 Tor 浏览器中单击按钮
【发布时间】:2020-07-31 04:02:12
【问题描述】:

我使用 Tor 浏览器和 Selenium 来自动点击按钮。

文件 script.py

from tbselenium.tbdriver import TorBrowserDriver
with TorBrowserDriver("/home/user/Selenium/tor-browser_en-US/") as driver:
driver.get('https://www.example.com/form.html')

我如何设法单击此按钮(摘自 HTML 文件)?

<form method="post" id="IdA" action="https://example.com/action.php"><input id='valid' name='valid' value='012.23945765955' type="hidden"><button class="g-recaptcha" data-sitekey="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" data-callback="onSubmit" id="IdA" style="background:url(https://www.example.com/button.gif);width:190px;height:58px;border:none;cursor:pointer;display:none;" type="submit"></button></form>

我试过了,但是没用:

driver.findElement(By.Id("IdA")).click()

【问题讨论】:

    标签: python selenium ubuntu tor


    【解决方案1】:

    我假设您正在尝试绕过 CAPTCHA

    您可以通过以下两种方式之一进行操作。您可以使用选择器单击按钮。例如,带有“g-recpatcha”类的按钮的 XPath 选择器。您也可以只在页面上执行 JavaScript 代码来调用 onSubmit() 函数。

    所以有两个选择:

    1. driver.find_element_by_xpath("//button[@class='g-recaptcha']").click()

    2. driver.execute_script("onSubmit("" + captchaToken + "")")

    请参阅 2captcha API, Solving Captchas 上的 reCAPTCHA 回调。

    【讨论】:

    • 感谢您的回复!我还认为class="g-recaptcha" 与验证码有关,但是当我在浏览器(TOR、Firefox)中正常运行该站点时,我看不到验证码表单。这怎么可能?
    • 您没有看到验证码表单?还是验证码提交按钮?有一种东西,比如看不见的 recaptcha。
    • 没错,我没有看到任何与验证码有关的内容。编辑:但我了解绕过的一般方法(参考您的网址),但我不知道如何在我的 Python 脚本中实现这个具体的?
    • 你看到网页数据了吗?还是必须点击按钮才能到达?
    • 抱歉,“网页数据”是什么意思?
    猜你喜欢
    • 2018-10-31
    • 1970-01-01
    • 2019-10-02
    • 1970-01-01
    • 2020-04-17
    • 2016-03-22
    • 2019-09-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多