[英]How to combine in xpath "." and "()"
I have a table in DOM, eg:我在 DOM 中有一个表,例如:
<div class="test-table">
<div class="ant-collapse ant-collapse-icon-position-start test-table-composer">
<div class="ant-collapse-item ant-collapse-item-active">
<div class="ant-collapse-header" role="button" />
<div class="ant-collapse-content ant-collapse-content-active" >
<div class="ant-collapse-content-box">
<div class="ant-collapse ant-collapse-icon-position-start test-table-composer">
<div class="ant-collapse-item ant-collapse-item-active">
<div class="ant-collapse-header" role="button" />
<div class="ant-collapse-content ant-collapse-content-active" >
<div class="ant-collapse-content-box">
<div class="ant-collapse ant-collapse-icon-position-start test-table-composer">
<div class="ant-collapse-item">
<div class="ant-collapse-header" role="button"/>
</div>
</div>
<div class="test-table-test-group">
<div class="ant-collapse ant-collapse-icon-position-start test-table-test-item analyzed incomplete">
<div class="ant-collapse-item" id="c2c2c3b6-8b72-11ed-9e2e-0f23ae4a2524">
<div class="ant-collapse-header" role="button"/>
</div>
</div>
<div class="ant-collapse ant-collapse-icon-position-start test-table-test-item analyzed incomplete">
<div class="ant-collapse-item" id="c2c2c3b7-8b72-11ed-9e2e-8ba095d9d02e">
<div class="ant-collapse-header" role="button"/>
</div>
</div>
<div class="ant-collapse ant-collapse-icon-position-start test-table-test-item analyzed incomplete">
<div class="ant-collapse-item" id="c6248c66-8b72-11ed-9e2e-0b95f6f4ea18">
<div class="ant-collapse-header" role="button"/>
</div>
</div>
<div class="ant-collapse ant-collapse-icon-position-start test-table-test-item analyzed incomplete">
<div class="ant-collapse-item" id="c6466c47-8b72-11ed-9e2e-cd2c87901141">
<div class="ant-collapse-header" role="button"/>
</div>
</div>
<div class="ant-collapse ant-collapse-icon-position-start test-table-test-item analyzed incomplete">
<div class="ant-collapse-item" id="c4c28b5f-8b72-11ed-9e2e-496585fd7ed6">
<div class="ant-collapse-header" role="button"/>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="test-table-test-group"/>
</div>
</div>
</div>
</div>
</div>
and have my xpath:并有我的 xpath:
(//div[contains(@class, 'test-table-composer')]/div[contains(@class, 'test-table-test-item') or (contains(@class, 'ant-collapse-item') and not(@id))])[%s]
and I have a library which adds a "."我有一个库,它添加了一个“。” to the beginning of the expression.到表达式的开头。 [%s] is used for adding indexes [%s] 用于添加索引
How can I correctly update my current xpath to work with a "."?如何正确更新我当前的 xpath 以使用“.”? I need parentheses because it can be several nested elements with my xpath and I need to find them all and have a possibility to add an index inside it我需要括号,因为它可以是我的 xpath 中的几个嵌套元素,我需要找到它们并有可能在其中添加索引
Looks like you can put the dot .
看起来你可以把点.
before the first //
so your XPath will be在第一个之前//
所以你的 XPath 将是
(.//div[contains(@class, 'test-table-composer')]/div[contains(@class, 'test-table-test-item') or (contains(@class, 'ant-collapse-item') and not(@id))])[%s]
otherwise it will not work否则它不会工作
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.