如何使用 Python Selenium 选择输入元素

use*_*831 2 python selenium

我只是找不到选择这个元素的工作方式,通过 CSS 和 xpath 尝试过,但没有任何效果。

<input type="submit" value="Submit">
Run Code Online (Sandbox Code Playgroud)

这不起作用:

driver.find_element_by_xpath("//*[@id='theform']/div[2]/input").click()
driver.find_element_by_css_selector(".submit[value='Submit']").click()
Run Code Online (Sandbox Code Playgroud)

dda*_*son 7

这不起作用:

driver.find_element_by_xpath("//*[@id='theform']/div[2]/input").click() driver.find_element_by_css_selector(".submit[value='提交']").click()

第一次调用可能不起作用,因为input后代节点很可能过于模糊和模棱两可。

第二次调用不起作用,因为.submit[value='Submit']正在搜索(英文)

任何具有class~="submit"AND 的元素value="Submit"

value属性相匹配,而不是类选择。

您可以使用快速 CSS 选择器找到该元素:

driver.find_element_by_css_selector("input[type='submit']")
Run Code Online (Sandbox Code Playgroud)

请参阅Effective CSS Selectors 以了解如何制定好的 CSS 选择器,以及为什么上面的选择器会起作用。