【发布时间】:2020-09-01 19:26:21
【问题描述】:
我在网页上有一个[添加字段]按钮,当按下时,它将显示一个选择列表(下拉菜单)。
这个单选下拉列表的xpath是:'//*[@id="adv_options[3][]'
第二个数组项为空 l 比如'[]'。
我的代码可以在第一个“添加字段”上选择正确的项目,但是如果我再次单击“添加字段”,它会显示另一个单选下拉菜单(与options),第二个的xpath是一样的:'//*[@id="adv_options[3][]'
所以现在如果我尝试使用该 xpath 从该菜单中进行选择,它将选择第一个,而不是第二个。
该网站可能编码不佳,我如何从第二、第三或第四个单选下拉菜单选项中选择正确的项目?
更新:
从第一个下拉列表中选择第一个项目的方法如下:
element = self.driver.find_element(By.XPATH, '//*starts-with(@id, 'adv_options[3][]')
select=Select(element)
select.select_by_value('1506')
现在有第二个具有相同 id (adv_options[3][]) 的下拉列表,我无法通过 xpath 找到并从中选择项目。
如果有人遇到过这个问题并找到了可行的代码,请分享。
【问题讨论】:
标签: python html forms selenium xpath