我是新的硒,有两件事我需要做1. 要注意html上的文件名,但它是字符串的一部分,所以不知道如何在Selenium IDE中连接它2. 在一个表中,在搜索相关文件之后,我想单击该行的其他列之一中的链接。对于文件EMED.pdf,我想点击请求链接
HTML片段:<td>
<a class="OSfileLink" target="selenium_blank7934" href="/Practice/DownloadFile/8057329d-21df-4a44-baee-2068fc01b7dd" rel="EMED.pdf" style="background-color: transparent;">EMED.pdf</a>
</td>
<td></td>
<td> 27/02/2013 16:19:16 </td>
<td>
<a class="eApproval " data-toggle="modal" data-fileid="8057329d-21df-4a44-baee-2068fc01b7dd" href="#" rel="Requested (28/02/2013)" style="background-color: transparent;">Requested (28/02/2013)</a>
</td>
到目前为止,我有:
命令:点击Target://a[contains(text(),'Requested ')]/following-sibling::a[contains(text(),'EMED.pdf')]取值范围:
会出现一个错误:[错误]元素//a[contains(text(),'Requested ')]/following-sibling::a[contains(text(),'EMED.pdf')]未找到
我可以单独"查找"单个xpath,但它们不能一起工作。如有任何帮助,不胜感激。
- 编辑仍然不喜欢连接,但可以通过点击被识别来解决它。任何连接的帮助将是非常感谢
* 编辑连接:For: href="/Practice/DownloadFile/8057329d-21df-4a44-baee-2068fc01b7dd"我想从整个链接中获取指南:8057329d-21df-4a44-baee-2068fc01b7dd。
谢谢
看起来您的订单调换了,试着用preceding-sibling
替换following-sibling
。还要注意,您需要<a>
节点,但下面的兄弟函数检查<a>
之后的下一个节点,即<td>
,因此您需要从<td>
节点开始,并检查其中每个<a>
节点的内容。
或者反过来,您可以更改从哪个节点开始搜索。如果您想要"EMED.pdf",但仅当下一个节点是"已请求"时,请尝试这样做:
//td[contains(a/text(),'EMED.pdf')]/following-sibling::td[contains(a/text(),'Requested')]/a
基于你提供的html,我认为这是有效的,我用firefox xpath tester测试了它
//[td。[[包含(文本()、"EMED.pdf")]]]//(包含(文本()、"请求")]