java - 如何在selenium xpath中的多个div之间获取子父Web元素组件?

标签 java html xpath automation selenium-ide

我想获取子父元素<div class="post"/>给定帖子的文本,在本例中给定文本“post2”,它是代码中的第二个 div 一个页面中有很多帖子。

我尝试使用这样的 xpath,我确实认为可以在子父级 Web 元素之间找到: "//div[@id='content']//span[contains(text(), 'post2')]/.//*[@class='post']"

<div id="content">
    <div class="post">
        <div class="right">
            <div class="content">
                <div class="post-content">
                    <span>
                        post1
                    </span>
                </div>
            </div>
        </div>  
    </div>
    <div class="post">
        <div class="right">
            <div class="content">
                <div class="post-content">
                    <span>
                        post2
                    </span>
                </div>
            </div>
        </div>  
    </div>
</div>

是否存在任何其他解决方案,或者 xpath 可能是错误的?

最佳答案

现有的解决方案是使用“ancestor”关键字:

//div[@id='content']//span[contains(text(), 'post2')]/ancestor::div[@class='post']

关于java - 如何在selenium xpath中的多个div之间获取子父Web元素组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33947216/

相关文章:

php - 过滤传出的 html 文件

xml - 使用 XSLT 将此 XML 转换为 JSON

xml - "/"与 XPath 1.0 中的 "/*/parent::*"相同吗?

java - 在 Java 中实现这种线程/事件行为的最佳方式是什么?

java - Quartz 从按组条件过滤的数据库加载作业

jQuery 在 .animate 之后多次更改颜色和文本

html - 在旭日图中使用文本溢出并悬停

html - 使用 XPATH 定位特定元素,然后从该元素向前移动以定位树中的下一个表

java - 正确地逐渐减小网格中的值

java - 如何通过插件在 Eclipse 项目中创建包(文件夹)