按值Selenium / Python查找元素

时间:2018-05-02 13:52:58

标签: python selenium selenium-webdriver automation

我正在使用Selenium和Python自动从我们的发电厂中提取一些数据,现在我需要点击一个元素。 问题是我们正在监控的每个工厂的元素xpaths和订单更改。唯一的静态信息是value,就像在第3行value="T_U0中一样。

我尝试了很多方法,但我找不到解决方案。我不能使用索引或子项,因为参数的顺序正在改变。我试过CSS选择器没有成功。

在这里,我得到了一些尝试......

driver.find_element_by_xpath("//input[@value='T_U0']").click()
driver.find_element_by_css_selector("input[@data-id-sys-abbreviation='388']").click()

我尝试了很多其他的东西,但我只是在拼命尝试任何事情。

我真正需要的是find_by_value,如果有办法,请告诉我,如果没有,请告诉我我该怎么做。 < / p>

I need to click in some options that change order accordingly to the plant

2 个答案:

答案 0 :(得分:3)

问题在于第一个xpath。您正在尝试在需要获取选项时找到输入。

试试这个:

driver.find_element_by_xpath("//option[@value='T_U0']").click() 

答案 1 :(得分:2)

您可以尝试通过显示的文本单击/选择元素。 伪代码:

driver.find_element_by_xpath("//option[text()="Some text"]").click()