我只是找不到选择这个元素的工作方式,通过 CSS 和 xpath 尝试过,但没有任何效果。
<input type="submit" value="Submit">
这不起作用:
driver.find_element_by_xpath("//*[@id='theform']/div[2]/input").click()
driver.find_element_by_css_selector(".submit[value='Submit']").click()
最佳答案
This does not work:
driver.find_element_by_xpath("//*[@id='theform']/div[2]/input").click() driver.find_element_by_css_selector(".submit[value='Submit']").click()
第一次调用可能不起作用,因为 input
后代节点很可能过于模糊和模棱两可。
第二次调用无效,因为 .submit[value='Submit']
正在搜索(英文)
Any element that has
class~="submit"
ANDvalue="Submit"
value
属性匹配,但类选择器不匹配。
您可以使用快速 CSS 选择器找到该元素:
driver.find_element_by_css_selector("input[type='submit']")
参见 Effective CSS Selectors看看如何制定好的 CSS 选择器,以及为什么上面的选择器会起作用。
关于python - 如何使用 Python Selenium 选择输入元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45445922/