【问题标题】:Python, Selenium can't find input field based with xpathPython,Selenium 找不到基于 xpath 的输入字段
【发布时间】:2020-11-10 09:27:09
【问题描述】:

我想在以下输入字段中输入值 999:

<input value type="tel" maxlength="3" minlength="0" data-type="change" data-sku="Jopen-Koyt.33_1">

我不想使用“data-sku”变量,因为在这种情况下,我的代码只适用于这个特定的产品,我想要一个可以自动订购各种产品的机器人。

此外,我尝试了以下 xpath。

driver.find_element_by_xpath("//input[@data-type = 'change']").send_keys('999')

但是我收到以下错误:

selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable

非常感谢任何帮助!提前致谢。

【问题讨论】:

  • 在发送文本前尝试driver.find_element_by_xpath("//input[@data-type = 'change']").click()
  • 在这种情况下,我得到错误:selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable 。所以我认为这是因为我的 xpath 没有选择正确的输入字段。
  • 检查len(driver.find_elements_by_xpath("//input[@data-type = 'change']"))。只有一个这样的元素吗?
  • 谢谢。它表明它们是这些元素中的 2 个。但是,driver.find_elements_by_xpath("//input[@data-type = 'change']")[0].click() 再次给出错误:selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable。 (当我选择列表中的第二个元素时也是这种情况)
  • driver.find_elements_by_xpath("//input[@data-type = 'change']")[1].send_keys('999') 怎么样?

标签: python-3.x selenium xpath


【解决方案1】:

答案:

driver.find_elements_by_xpath("//input[@data-type = 'change']")[1].send_keys('999')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-18
    • 2016-04-24
    • 2022-07-29
    • 2021-06-16
    相关资源
    最近更新 更多