当前位置: 首页 > 面试题库 >

如何通过getText()从html中的多个子节点提取动态文本

贺栋
2023-03-14
问题内容

我们有一个Div,其中包含一些硬编码文本,而span则包含一些动态文本值(请参阅下面的HTML代码以获取更多信息)。结果文本为: 1任务将从“
XYZ”更新为“ ABC”

但是当我使用selenium定位器检索时

final String actual = $("#bulk_update_confirmation").text();

然后,实际仅包含“任务要从更新到”。缺少所有动态文本。

HTML代码如下(浏览器为chrome)

<div id="bulk_update_confirmation" class="ui-dialog-content ui-widget-content" style="display: block; width: auto; min-height: 96.16px; height: auto;" scrolltop="0" scrollleft="0">
            <span id="taskCountSpan">1</span> Tasks to be updated from <span id="oldStatusSpan">'XYZ'</span> to <span id="newStatusSpan">'ABC'</span> <span id="desciptionSpan"> </span> <br>
            <hr>
            <div class="ui-dialog-buttonset">
                <button type="button" id="btn_bulk_update" onclick="updateBulkStatus()">Update</button>
                <button type="button" onclick="closeBulkUpdateRequest()">Cancel</button>
            </div>
        </div>

问题答案:

在尝试提取总文本(例如 1要从“ XYZ”更新为“ ABC”的任务)之前, 您可以使所有三个子 元素的 WebDriverWait
可见, 并且可以使用以下解决方案:

new WebDriverWait(driver, 10).until(ExpectedConditions.and(
    ExpectedConditions.visibilityOfElementLocated(By.xpath("//span[@id='taskCountSpan']")),
    ExpectedConditions.visibilityOfElementLocated(By.xpath("//span[@id='oldStatusSpan']")),
    ExpectedConditions.visibilityOfElementLocated(By.xpath("//span[@id='newStatusSpan']"))
));


 类似资料:
  • 我有以下数据结构(原始数据结构为2.5gb,因此必须进行解析): 我想提取所有值及其相应的值。最后,我计划有一个带有一列personId和一列income的df(income将是重复的)。因此,棘手的部分不仅是名称空间,还包括如何在不同的节点级别访问XML。 到目前为止,我的方法无法做到这一点。 非常感谢您的帮助。

  • 问题内容: 我正在一个项目中,用户对我们的代客服务的请求在另一端代客接受请求。 我正在使用Firebase作为后端,并应要求将客户uid保存在“ request”子项上。 当代客接受请求时,客户uid应从“请求”节点移至“进行中”节点。 我怎样才能做到这一点? 问题答案: 我建议使用这个: 这来自以下来源:https : //gist.github.com/katowulf/6099042。我在J

  • 我在打印同一行的表格数据时遇到了问题。当然,我可以用< code>css_selector("td")来标识,但是这样会在同一列中打印出:姓名地址城市/州电话,而我试图在同一行中创建:姓名、地址、城市/州电话 HTML:(见附图) 这似乎是一个非常愚蠢的问题...但是我已经被困了相当长的一段时间,并且无法隔离< code > 代码: 我以这种方式识别它,试图简单地返回正在进行的兄弟姐妹的文本...

  • 我已经复制了某个节点的xpath Chrome返回 //*[@id=“\uuuuuw2\u cEfEsuQ\u列表项目”]/div/div[2]/div/div[1]/div[2]/a[1] 在Chrome控制台中执行此操作将返回 0可以扩展并包含许多子节点(我删除了其中的大部分,因为我在问题中抱怨代码太多),如下所示: 我需要返回和节点的xpath。我在上尝试了不同的变体,但都没有成功。我该怎么

  • 问题内容: 在Linux桌面(RHEL4)上,我想从大文件(> 1 Gig)中提取一定范围的字节(通常小于1000)。我知道文件的偏移量和块的大小。 我可以编写代码来执行此操作,但是有命令行解决方案吗? 理想情况是: 问题答案: 尝试:

  • 尝试提取html body元素中文本节点的值。它紧接着一个已知的h2标签,我可以用h2[text()='A Heding']找到它。但是我不知道如何获取下面的文本节点,即下面示例中的文本“我想知道如何为该文本指定XPath表达式”。 我使用Java和JSoup,但是任何工具,最好是基于Java的 感谢您的帮助。