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

使用Html Agility Pack获取HTML中指定span的class及Car Center文本问题

解决方法:遍历模块并在上下文内定位元素

看起来你遇到的核心问题是没有针对每个独立的company-employee-insights-item模块单独处理,全局查找graph-stats下的span会一直返回第一个匹配的employee-decrease类。下面是具体的解决思路和代码示例,帮你同时提取Car Center文本和对应span的类:

核心思路

  1. 先定位父容器company-employee-insights,确保我们只处理目标列表内的模块
  2. 遍历该容器下的每一个company-employee-insights-item子模块
  3. 在每个子模块的上下文内,分别提取Car Center文本和对应的graph-stats下span的类(这样就能匹配到当前item的employee-decrease或employee-increase)

代码示例(Python + BeautifulSoup)

from bs4 import BeautifulSoup

# 假设你已经解析好页面得到soup对象
parent_container = soup.find("div", class_="company-employee-insights")
# 获取所有item模块
insight_items = parent_container.find_all("div", class_="company-employee-insights-item")

for item in insight_items:
    # 提取Car Center文本(请根据实际HTML结构调整选择器,比如如果文本在h4或特定class的span里)
    car_center_text = item.find("span", class_="location-title").get_text(strip=True)  # 替换成实际元素的选择器
    
    # 在当前item内查找graph-stats下的span
    stats_span = item.find("div", class_="graph-stats").find("span")
    # 获取span的目标类(假设类列表里第一个就是employee-decrease/increase)
    trend_class = stats_span["class"][0]
    
    # 输出结果,或者存入列表
    print(f"地点: {car_center_text}, 员工趋势类: {trend_class}")

代码示例(JavaScript/浏览器端)

// 获取父容器
const parentContainer = document.querySelector(".company-employee-insights");
// 获取所有item模块
const insightItems = parentContainer.querySelectorAll(".company-employee-insights-item");

insightItems.forEach(item => {
    // 提取Car Center文本(调整选择器匹配实际结构)
    const carCenterText = item.querySelector(".location-title").textContent.trim();
    
    // 在当前item内找graph-stats的span
    const statsSpan = item.querySelector(".graph-stats span");
    // 判断并获取目标类
    let trendClass;
    if (statsSpan.classList.contains("employee-decrease")) {
        trendClass = "employee-decrease";
    } else if (statsSpan.classList.contains("employee-increase")) {
        trendClass = "employee-increase";
    }
    
    console.log(`地点: ${carCenterText}, 员工趋势类: ${trendClass}`);
});

关键提醒

  • 一定要在每个item的上下文内执行查找,不要直接全局调用find或querySelector,否则会始终拿到页面中第一个匹配的span的类
  • 请根据实际页面的HTML结构,调整提取Car Center文本的选择器(比如文本可能在<h3>、<div>或其他class的元素里)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 09:49:23