【问题标题】:How to click on the element with Selenium Python如何使用 Selenium Python 单击元素
【发布时间】:2019-03-10 18:58:52
【问题描述】:

我正在尝试在此website 上单击文本为 我没有电话 的元素。

所以我用inspect找到了元素。这是html中的元素:

<span class="toggle-link link_has-no-phone" role="button">I&nbsp;don't have a&nbsp;telephone number</span>

在我的非功能代码中我写了这个:

r = driver.find_element_by_xpath("//*[@id='root']/div/div[2]/div/main/div/div/div/form/div[3]/div/div[2]/div/span")
r.click

该按钮从未被点击过,也没有任何反应,我没有收到任何错误,也无法点击它,我们将不胜感激。

【问题讨论】:

  • 不应该是r.click()而不是r.click吗?

标签: python selenium xpath css-selectors xpath-1.0


【解决方案1】:

您可以使用下面的 css 选择器来获取跨度:

r = driver.find_element_by_css_selector(".link_has-no-phone")
r.click()

【讨论】:

    【解决方案2】:
    r = driver.find_element_by_xpath("//*[@id='root']/div/div[2]/div/main/div/div/div/form/div[3]/div/div[2]/div/span")
    r.click()
    

    你忘了括号

    【讨论】:

      【解决方案3】:

      要点击文本为我没有电话号码的元素,您可以使用Locator Strategies

      • css_selector:

        driver.find_element_by_css_selector("span.toggle-link.link_has-no-phone").click()
        
      • xpath:

        driver.find_element_by_xpath("//span[@class='toggle-link link_has-no-phone']").click()
        

      【讨论】:

        猜你喜欢
        • 2021-03-31
        • 2017-11-23
        • 1970-01-01
        • 2019-10-23
        • 2022-11-01
        • 1970-01-01
        • 2021-12-28
        • 2021-12-09
        相关资源
        最近更新 更多