
在web自动化测试和数据抓取中,从复杂的html结构,尤其是web表格中提取特定信息,是一项常见且关键的任务。当目标文本嵌套在
Selenium基础:元素定位与文本获取
在深入具体策略之前,了解Selenium如何定位元素以及如何获取其文本至关重要。
1. 元素定位器 (Locators) Selenium提供了多种定位策略,通过By类使用:
- By.ID:通过元素的ID属性定位。
- By.NAME:通过元素的Name属性定位。
- By.CLASS_NAME:通过元素的Class属性定位。
- By.TAG_NAME:通过元素的标签名定位。
- By.LINK_TEXT:通过链接的完整可见文本定位。
- By.PARTIAL_LINK_TEXT:通过链接的部分可见文本定位。
- By.XPATH:通过XPath表达式定位,功能强大,可以定位页面上几乎任何元素。
- By.CSS_SELECTOR:通过CSS选择器定位,性能通常优于XPath,且语法更简洁。
2. 文本获取方法
- element.text (Python) / element.getText() (Java):这是获取元素可见文本的首选方法。它会返回元素及其所有子元素的可见文本,并且会忽略隐藏元素。对于本教程中
包含的情况,直接获取 的.text通常就能得到中的文本。 - element.get_attribute("innerText"):获取元素的“内部文本”,类似于element.text,但其行为在不同浏览器和某些边缘情况下可能略有差异。
- element.get_attribute("textContent"):获取元素的文本内容,包括隐藏元素的文本,通常与element.text不同。
对于本教程的场景,element.text通常是最佳选择。
策略一:直接定位目标Span标签
如果目标标签具有独特的属性(如id、class)或其在页面中的XPath/CSS路径相对稳定且唯一,我们可以直接通过定位器来获取它。
立即学习“Python免费学习笔记(深入)”;
示例HTML结构:
11/29/2023 04:01:10 Python代码示例:
import time from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC # 为了演示,我们使用无头模式和模拟HTML内容 options = webdriver.ChromeOptions() options.add_argument('--headless') options.add_argument('--disable-gpu') driver = webdriver.Chrome(options=options) mock_html_content = """Web Table Demo Data 1-1 相关文章
Python数据抓取流程_字段提取解析【教程】
如何在 Selenium 中精准定位并提取非隐藏的表格行元素
如何使用 Beautiful Soup 正确提取网页中的所有分类链接
Python爬虫解析HTML技巧_xpath与css选择器对比【教程】
Python表单自动填写_web驱动模拟操作技巧【指导】
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
更多热门AI工具
更多相关专题
PHP 命令行脚本与自动化任务开发本专题系统讲解 PHP 在命令行环境(CLI)下的开发与应用,内容涵盖 PHP CLI 基础、参数解析、文件与目录操作、日志输出、异常处理,以及与 Linux 定时任务(Cron)的结合使用。通过实战示例,帮助开发者掌握使用 PHP 构建 自动化脚本、批处理工具与后台任务程序 的能力。
44
2025.12.13
AO3官网入口与中文阅读设置 AO3网页版使用与访问本专题围绕 Archive of Our Own(AO3)官网入口展开,系统整理 AO3 最新可用官网地址、网页版访问方式、正确打开链接的方法,并详细讲解 AO3 中文界面设置、阅读语言切换及基础使用流程,帮助用户稳定访问 AO3 官网,高效完成中文阅读与作品浏览。
19
2026.02.02
主流快递单号查询入口 实时物流进度一站式追踪专题本专题聚合极兔快递、京东快递、中通快递、圆通快递、韵达快递等主流物流平台的单号查询与运单追踪内容,重点解决单号查询、手机号查物流、官网入口直达、包裹进度实时追踪等高频问题,帮助用户快速获取最新物流状态,提升查件效率与使用体验。
6
2026.02.02
Golang WebAssembly(WASM)开发入门本专题系统讲解 Golang 在 WebAssembly(WASM)开发中的实践方法,涵盖 WASM 基础原理、Go 编译到 WASM 的流程、与 JavaScript 的交互方式、性能与体积优化,以及典型应用场景(如前端计算、跨平台模块)。帮助开发者掌握 Go 在新一代 Web 技术栈中的应用能力。
1
2026.02.02
PHP Swoole 高性能服务开发本专题聚焦 PHP Swoole 扩展在高性能服务端开发中的应用,系统讲解协程模型、异步IO、TCP/HTTP/WebSocket服务器、进程与任务管理、常驻内存架构设计。通过实战案例,帮助开发者掌握 使用 PHP 构建高并发、低延迟服务端应用的工程化能力。
2
2026.02.02
Java JNI 与本地代码交互实战本专题系统讲解 Java 通过 JNI 调用 C/C++ 本地代码的核心机制,涵盖 JNI 基本原理、数据类型映射、内存管理、异常处理、性能优化策略以及典型应用场景(如高性能计算、底层库封装)。通过实战示例,帮助开发者掌握 Java 与本地代码混合开发的完整流程。
1
2026.02.02
更多热门下载
更多相关下载
更多精品课程
相关推荐/热门推荐/最新课程更多最新文章
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号




