【问题标题】:I can't get passed Selenium ElementNotInteractableException: button could not be scrolled into view我无法通过 Selenium ElementNotInteractableException:按钮无法滚动到视图中
【发布时间】:2020-11-09 18:13:44
【问题描述】:

有 3 个按钮,每个按钮在网站上都标有相同的东西。如何点击python中的第二个按钮?

<button type="button" class="btn btn-primary checkout-step-action-done layout-quarter">

到目前为止,我只是尝试过这个,因为我是 selenium 的新手,但它只点击第一个按钮。

driver.find_element_by_css_selector(".layout-quarter").click()
driver.find_element_by_xpath("//*[@class='btn btn-primary checkout-step-action-done layout-quarter']").click()

https://pastebin.com/A9VwTYdi

我在 pastebin 上粘贴 HTML,因为它很长。我建议使用 ctrl-f 来查找 3 个按钮。我想点击的按钮上面写着“继续付款”。

【问题讨论】:

    标签: python selenium beautifulsoup


    【解决方案1】:

    这种方法似乎对我有用,但我确信有更好的解决方案。

    button = driver.find_elements_by_css_selector(".layout-quarter")
    for value in button:
        if value.text == 'CONTINUE TO PAYMENT':
            value.click()
    

    【讨论】:

    • driver.find_element_by_css_selector("[value='CONTINUE TO PAYMENT']'").click()
    【解决方案2】:

    好的,我已经解决了这个问题。我可以通过使用它来缩短代码。

    driver.find_elements_by_css_selector(".layout-quarter")[1].click()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多