使用Selenium xpath查找celltable的特定单元格

使用Selenium xpath查找celltable的特定单元格,selenium,selenium-webdriver,Selenium,Selenium Webdriver,我有一个celltable,其中有多行,是一个动态表 附截图 我想要的是找到列包含的行useren@lim.mobi 然后单击其复选框 我正在尝试使用xpath,但没有太多经验,如果我能得到一些帮助,请 谢谢 下面是特定单元格的html代码 我不知道表的确切html,要形成xpath是很困难的。 但是它应该是这样的 //*[contains(text(),'useren@lim.mobi ')]/../td[2] 对于下表,如果我必须为某家公司找到相应的联系人,我会这样做。 请尝试使用以下

我有一个celltable,其中有多行,是一个动态表

附截图

我想要的是找到列包含的行useren@lim.mobi 然后单击其复选框

我正在尝试使用xpath,但没有太多经验,如果我能得到一些帮助,请

谢谢

下面是特定单元格的html代码


我不知道表的确切html,要形成xpath是很困难的。 但是它应该是这样的

//*[contains(text(),'useren@lim.mobi ')]/../td[2]
对于下表,如果我必须为某家公司找到相应的联系人,我会这样做。


请尝试使用以下xpath:

//tr[./td[contains(text(),'useren@lim.mobi')]/td[2]/input

如果上述xpath不起作用,请附上html代码屏幕截图,以便我可以告诉您extact xpath。

这可能有助于解决您的问题:

//td[@title="useren@lim.mobi"]/following::input[@type="checkbox"]
如果使用此
XPath
获得
NoTouchElementException
,则可能需要添加
ExplicitWait
,如下所示:

WebElementWait wait = new WebElementWait(getWebDriver, 10);
wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//td[@title='useren@lim.mobi']/following::input[@type='chec‌​k‌​b‌​ox']")));

分享相同的Html代码。附加Html代码的截图谢谢。对于这个例子,我添加了截图,请指导。安德森建议的答案将非常有效<代码>//td[包含(text(),”useren@lim.mobi“”]/following::input[type=“checkbox”]它给了我null,所以不可能使用你建议的那一个,因为我想单击此行的第一个和第三个复选框。@junaidp有可能,你只要找出答案,我向你展示了如何为类似情况生成xpath。不要期望本论坛给出直接答案。您好,随附相应html代码的屏幕截图,请指导如果提供的
XPath
不起作用,请分享
selenium
异常以及我是否使用了正确的XPath://td[@title=useren@lim.mobi]/以下::input[type=checkbox]:org.openqa.selenium.InvalidSelectorException)org.openqa.selenium.InvalidSelectorException:无效选择器:无法找到xpath表达式为(//td[@title)的元素=useren@lim.mobi]/以下::输入[type=checkbox]),因为以下错误:语法错误:未能对“文档”执行“评估”:字符串“(//td[@title=useren@lim.mobi]/以下::input[type=checkbox])不是有效的XPath表达式。是否确实在值周围使用引号?您似乎使用了
//td[@title=useren@lim.mobi]/following::input[type=checkbox‌​]
而不是
//td[@title=”useren@lim.mobi“]/following::input[type=“checkbox”]
//tr[./td/div/a[contains(text(),'')]/td[2]/div/input请使用这个,如果工作不正常请告诉我。
WebElementWait wait = new WebElementWait(getWebDriver, 10);
wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//td[@title='useren@lim.mobi']/following::input[@type='chec‌​k‌​b‌​ox']")));