我正在尝试使用xpath获取特定行(可以使用id标识此特定行)之后的所有行的值。请注意,我在自动化的任何对象克隆命令中都使用它来查找和获取详细信息。 可以说这是桌子:
<table class="actiontable" >
<tbody>
<tr></tr>
<tr></tr>
<tr id="h32423">
<td class="claim"><span id="claimants">Claimants</span></td>
</tr>
<tr id="a23">
<td id="g543"><a href="some site">Edward Hunter</a> </td>
</tr>
<tr>
<td id="g544"><a href="some site">Jane Doe</a> </td>
</tr>
<tr></tr>
</tbody>
</table>
在上表中,我需要提取“索赔人”行之后的所有名称。有什么建议吗?
答案 0 :(得分:0)
您需要像这样检查preceding-sibling
数据:
//tr[preceding-sibling::tr[normalize-space(.)='Claimants']]
您可以根据自己的评论进行尝试:
/table[@class='actiontable']/descendant::tr[normalize-space(lower-case(.))!= 'claimants']
答案 1 :(得分:0)
对于您的简单示例,可以在Automation Anywhere编辑器中执行以下操作:
添加条件为Times
的{{1}}的循环命令
在循环对象内部,克隆您要访问的字段之一,并将2
更改为
DOMXPath
选择/html/body/table[1]/tbody[1]/tr[$Counter$+3]/td[1]/a[1]
为Action
,选择Get Property
为Select Property
将此分配给您选择的变量
通过消息框命令输出此变量
运行时,您应该会看到显示了两个名称。
在此,我们使用AA计数器变量遍历DOMXPath。我已将其调整为3,因为您要开始的行之前有3个HTML InnerText
标签
答案 2 :(得分:0)
我不确定回答是否为时已晚。我认为以下XPath符合您的条件。
//tr[td[span[@id='claimants']]]/following-sibling::tr/td/a
*您可以根据要访问的元素将/tr/td/a
更改为/tr
或/tr/td
我在Google Chrome的 XPath搜索控制台中尝试了该XPath,它导航到ID = claimers 的行之后的所有a
标签。
由于我对AA很陌生,所以我不知道如何遍历从XPath获取的那些标签。但我希望这可以帮助您解决问题。 :)
[更新] 我找到了解决方法
1.将//tr[td[span[@id='claimants']]]
与对象克隆一起使用以获取特定行的索引。假设索引值存储在变量$vIndex$
中
2.遍历表中的所有td
3.如果$Counter$
> $vIndex$
则是特定行下的行。