Selenium Webdriver Java如何通过XPath定位无标签的Running文本?
问题原因
你原来编写的XPath仅定位到了img元素本身,而你需要获取的是该img元素后面紧邻的文本节点,因此无法直接提取到Running内容。
可行的XPath写法
写法1:基于img节点定位后续文本节点
定位到目标img节点后,取其后面第一个同级文本节点即可:
//img[@id='UniversalRepositoryExplorer_treeNodeIcon_7']/following-sibling::text()[1]
该写法精准匹配img后紧邻的未被标签包裹的文本,不会误选span内其他位置的文本内容。
写法2:基于父span节点定位包含目标内容的文本节点
如果确定文本内容固定包含Running,也可以从父span节点直接筛选对应文本:
//span[@id='UniversalRepositoryExplorer_treeNode7_name']/text()[contains(., 'Running')]
补充说明
通过上述XPath拿到的文本默认会包含前后的 ,如果需要纯Running内容,对返回的文本结果做空格/特殊字符过滤即可。
内容的提问来源于stack exchange,提问作者itsabhishk
相关产品推荐
相关产品推荐

