Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
RobotFramework:查找包含文本的Xpath_Xpath_Selector_Robotframework - Fatal编程技术网

RobotFramework:查找包含文本的Xpath

RobotFramework:查找包含文本的Xpath,xpath,selector,robotframework,Xpath,Selector,Robotframework,因此,我在下面位置的链接包含“下载证书”字样 xpath=//*[@id="training_list_table"]/tbody/tr/td[5]/span/a/text() 我想在我的搜索中更加具体,这样它就不会只接受任何旧文本,比如 xpath=//*[@id="training_list_table"]/tbody/tr/td[5]/span/a/text()='Download certificate' 但这让我失望。进行这种搜索的正确语法是什么?如果我理解正确,您可以尝试以下方法

因此,我在下面位置的链接包含“下载证书”字样

xpath=//*[@id="training_list_table"]/tbody/tr/td[5]/span/a/text()
我想在我的搜索中更加具体,这样它就不会只接受任何旧文本,比如

xpath=//*[@id="training_list_table"]/tbody/tr/td[5]/span/a/text()='Download certificate'

但这让我失望。进行这种搜索的正确语法是什么?

如果我理解正确,您可以尝试以下方法:

xpath=//*[@id="training_list_table"]/tbody/tr/td[5]/span/a[contains(text(), 'Download certificate')]

//*[contains(text(),'')是键。

如果要匹配该链接

  • 包含您可能使用的文本“下载证书”

    //a[contains(., "Download certificate")]
    
  • 以文本
    开始“下载证书”

  • 有准确的文本“下载证书”:


如果一个表中有多个链接包含
“下载证书”
,您可以通过特定属性、文本或索引指定适当的祖先,例如
//td[5]//a[.=“下载证书”]
-您不必像
../tbody/tr/td[5]那样在
XPath中包含祖先组/span/…

您应该检查
href
属性,看看这是否有帮助。
//a[starts-with(., "Download certificate")]
//a[.="Download certificate"]