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

如何在网页中定位指定文本并复制其相邻区域内容

定位网页文本并获取相邻数值的实现方法

一、Python + Selenium 处理动态加载网页

如果目标网页是动态渲染的(比如数据通过JS加载),用Selenium模拟浏览器操作最靠谱:

  • 示例代码:
from selenium import webdriver
from selenium.webdriver.common.by import By

# 初始化浏览器驱动
driver = webdriver.Chrome()
driver.get("你的目标网页地址")

# 精准定位包含"Net PPW"的元素
net_ppw_item = driver.find_element(By.XPATH, "//*[text()='Net PPW']")
# 获取相邻的数值元素(根据页面实际HTML结构调整XPath,比如取第一个兄弟节点)
value_item = net_ppw_item.find_element(By.XPATH, "./following-sibling::*[1]")
# 提取数值文本
net_ppw_value = value_item.text.strip()
print(net_ppw_value)  # 输出示例中的1.56

driver.quit()
  • 关键提醒:不同网页的DOM结构不一样,需要用浏览器F12查看“Net PPW”和数值的标签关系,调整兄弟节点的定位规则。

二、Python + BeautifulSoup 处理静态网页

如果网页内容是一次性加载完成的静态页面,直接解析HTML即可:

  • 示例代码:
import requests
from bs4 import BeautifulSoup

url = "你的目标网页地址"
page_html = requests.get(url).text
soup = BeautifulSoup(page_html, "html.parser")

# 找到包含"Net PPW"的文本节点
net_ppw_text = soup.find(text="Net PPW")
if net_ppw_text:
    # 获取相邻的数值标签(比如下一个兄弟标签,根据实际结构调整)
    value_tag = net_ppw_text.find_next_sibling()
    if value_tag:
        print(value_tag.get_text(strip=True))  # 输出1.56
  • 补充:如果“Net PPW”和数值在同一个父容器里,也可以先定位父容器,再遍历子元素筛选数值。

三、浏览器控制台临时提取(JavaScript)

要是只是临时调试,不用写脚本,直接打开浏览器F12控制台输入代码:

// 用XPath定位Net PPW元素
const netPPWElement = document.evaluate("//*[text()='Net PPW']", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
if (netPPWElement) {
    // 获取相邻的数值元素(这里取下一个兄弟元素,根据页面结构调整)
    const valueElement = netPPWElement.nextElementSibling;
    if (valueElement) {
        console.log(valueElement.textContent.trim()); // 输出1.56
    }
}
  • 注意:如果页面里“Net PPW”文本有重复,需要给XPath加更精准的条件(比如限定父元素的class或id)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 21:21:00