[英]How can I find all elements from a specified XPATH but accept slightly variable IDs with Selenium?
所以我试图让所有元素都像这样,除了 ccid 之后的数字可以是任何东西
//*[@id="ccid_4587719"]/td[12]/text()[1]
下面的这段代码几乎得到了我喜欢的元素,但它也提取了两个额外的元素,我不确定如何对其进行编码以仅获得上面显示的元素(我谈到的例外情况除外):
classnames = driver.find_elements_by_xpath('//*[starts-with(@id, "ccid")]/td[12]')
上面的代码(类名变量)几乎是完美的,但我不希望它拉出这些元素:
//*[@id="ccid_4587719"]/td[12]/a[2]
//*[@id="ccid_4587719"]/td[12]/text()[3]
基本上,我想要每个 ID 下的第一个元素。 如果您需要澄清,请告诉我。 我会尽力解释。
所以你有几乎正确的 xpath,你只需要指出你只需要第一次出现的元素?
//*[startsWith(@id, 'ccid_')]/td[12]/text()[1]
如果适合您,您也可以尝试其中一种:
//*[startsWith(@id, 'ccid_')]/td[12]/*[1]/text()
//*[startsWith(@id, 'ccid_')]/td[12]//text()[1]
为了给你准确的答案,我们需要看看 td[12] 的 html 结构
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.