You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Selenium/Java定位表格中奥地利对应公司名的最优方案咨询

更优的Selenium/Java定位方法:获取奥地利对应的公司名

不需要通过向左移动单元格的方式,直接利用表格的DOM结构关联关系定位,推荐以下几种更稳定、直观的XPath写法:

方法1:通过父行节点定位目标列

找到奥地利所在单元格的父级<tr>行,再直接获取该行的第一列(公司名列):

//td[text()='Austria']/parent::tr/td[1]

对应的Java代码:

WebElement companyCell = driver.findElement(By.xpath("//td[text()='Austria']/parent::tr/td[1]"));
String companyName = companyCell.getText();

这种方法的优势是逻辑更贴合业务需求(找对应行的公司名),即使表格中间新增列,只要公司名始终在第一列,定位就不会失效,比固定偏移单元格的方式更稳定。

方法2:精准定位左侧兄弟节点

如果确定公司名在奥地利单元格左侧第2位,也可以用preceding-sibling直接定位,写法比手动偏移更清晰:

//td[text()='Austria']/preceding-sibling::td[2]

方法3:基于表格整体结构定位

先定位目标表格(页面中表格的id为customers),再筛选出包含奥地利的行,最后取第一列:

//table[@id='customers']/tbody/tr[td[text()='Austria']]/td[1]

这种写法把表格上下文也纳入定位,避免页面中其他表格干扰,定位精度更高。

内容的提问来源于stack exchange,提问作者Lorena

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 15:45:31