繁体   English   中英

如何在具有相同ID的多个元素的文档中获取元素的XPATH?

[英]How to get XPATH of element in a document with multiple elements with the same id?

我从Google的AdWords网站上获取数据,该网站包含多个具有相同id元素。

我想得到一个给定元素的XPath。

你能否建议一个jQuery / JavaScript函数可以计算给定元素的XPath, 假设该页面可能包含多个具有相同id元素

请不要告诉我,我不应该有多个具有相同id元素。 这不是我的想法......

你知道你可以使用//*[@id='blah'][1][2]来访问xpath, //*[@id='blah'][1]你想要的答案是什么?

如果您知道您想要的元素将是该id的第n个出现,那么Martin的建议将起作用。

您还可以通过搜索多个属性并定义元素来缩小结果,例如,您知道id对于具有特定名称或类的div元素是唯一的。

//div[@id='hello' and @name='world']

这对你来说已经足够了,但如果没有,那么你可以通过相对于其他元素搜索来找到你想要的元素。

鉴于xml:

<root>
    <div id='parent1'>
        <div id='element1' />
        <div id='element2' />
    </div>
    <div id='parent2'>
        <div id='element1' name='foo' />
        <div id='element2' name='bar' />
    </div>
</root>

你可以通过以下方式获得第二个元素2:

/root/div[2]/div[2]
//div[@id='parent2']/div[@id='element2']
//div[@id='element2' and name='bar']
//div[@id='element1' and @name='foo']/../div[@id='element2']

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM