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

Selenium技术问询:如何获取指定网页中h3标签内的所有用户名

问题解决方法

你的问题出在当前XPath匹配到了页面顶部的标题<h3>(文本为“Directie”),而非每个用户卡片内的用户名<h3>。页面中存在多个带inner类的<div>,visibilityOfElementLocated只会返回第一个匹配到的元素,所以你拿到的是标题文本。

修正步骤:

  1. 精准定位用户卡片内的<h3>:
    观察页面结构,每个用户的信息都包裹在带team-member类的容器中,因此需要调整XPath,只匹配用户卡片里的<h3>元素:
    //div[contains(@class,'team-member')]//div[contains(@class,'inner')]/h3
    
  2. 获取所有匹配元素并遍历:
    使用visibilityOfAllElementsLocatedBy等待所有用户名称元素加载完成,再通过循环逐个提取文本。

完整代码示例:

// 等待所有用户名称元素加载完成
List<WebElement> userNameElements = wait.until(
    ExpectedConditions.visibilityOfAllElementsLocatedBy(
        By.xpath("//div[contains(@class,'team-member')]//div[contains(@class,'inner')]/h3")
    )
);

// 遍历获取每个用户名
for (WebElement element : userNameElements) {
    String userName = element.getText();
    // 输出或处理用户名
    System.out.println(userName);
}

如果上述XPath仍不匹配,可检查页面实际DOM结构,确认用户卡片的父容器类名,替换team-member为对应类即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 09:27:25