Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.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

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
Selenium 如何在几个相同的tr下找到tr下的某个链接_Selenium_Xpath_Selenium Webdriver - Fatal编程技术网

Selenium 如何在几个相同的tr下找到tr下的某个链接

Selenium 如何在几个相同的tr下找到tr下的某个链接,selenium,xpath,selenium-webdriver,Selenium,Xpath,Selenium Webdriver,另一个问题是访问HTML的特定部分以单击链接。我需要单击分类项目#上方的链接,IFW#QA GM 04012014142-1,供应商一号 我只知道TD的一部分是“QA GM 04012014142”。我可以通过执行以下操作到达桌子: //*[@id='openTasksTable']/t正文 我剩下的是一个未知数量的TD,所有TD都具有相同的ID。我不知道如何从这一点上找到合适的TD 代码: 分类项目#,IFW#QA GM 04012014 0911-1,供应商一 2014年4月24日 分类项

另一个问题是访问HTML的特定部分以单击链接。我需要单击分类项目#上方的链接,IFW#QA GM 04012014142-1,供应商一号 我只知道TD的一部分是“QA GM 04012014142”。我可以通过执行以下操作到达桌子:

//*[@id='openTasksTable']/t正文

我剩下的是一个未知数量的TD,所有TD都具有相同的ID。我不知道如何从这一点上找到合适的TD

代码:


分类项目#,IFW#QA GM 04012014 0911-1,供应商一
2014年4月24日
分类项目#,IFW#QA GM 04012014 1012-1,供应商一
2014年4月24日
分类项目#,IFW#QA GM 0401201414-1,供应商一
2014年4月24日
分类项目#,IFW#QA GM 04012014420-1,供应商一
2014年4月24日
分类项目#,IFW#QA GM 0401201442-1,供应商一
2014年4月24日
分类项目#,IFW#QA GM 0401014 1424-1,供应商一
2014年4月24日
谢谢!
Greg

以下xpath应该适合您:

//td[contains(text(),'QA GM 04012014 1424')]/..//a

它将只找到与您提到的
位于同一
中的

您可以为每个td:td\u counts+=1创建一个变量“td\u counts”=0,如果td中的“分类项目”,则所需的td\u count=td\u count-1我已更新代码以提供更多信息。不确定上面的内容是否能让我找到所需的href。这会给我一个无效的XPath错误。并尝试完整内容://*[@id='openTasksTable']/tbody/td[contains(text(),'QA GM 04012014 1424')]/..//a也会给我一个无效的XPath错误。这是一个输入错误。我刚刚更新了它。请再试一次。此外,它也没有必要添加任何东西的开始。我也纠正了我的。没有匹配的节点。无法使用该路径找到它。如果要使用完整路径(但这不是必需的)。您应该使用
//*[@id='openTasksTable']///tbody//td[contains(text(),'QA GM 04012014 1424')]/../a
而不是
///code>来搜索不仅是节点的直接子节点。一种不进行回溯的方法:
///tr td[contains(text(),'QA GM 04012014 1424')]///a
//td[contains(text(),'QA GM 04012014 1424')]/..//a