Playwright 是一个用于 Web 测试与自动化的框架,通过统一 API 驱动 Chromium、Firefox 和 WebKit。
mherrmann/helium
基于 Selenium 的 Python 浏览器自动化库,可按页面可见文字而非 CSS 选择器或 XPath 定位元素。
- Star
- 8,322
- Fork
- 513
- 未关闭 Issue
- 55
- 最近提交
- 3天前
这是什么?
Helium 是一个用于自动化 Chrome 和 Firefox 浏览器的 Python 库。它底层封装 Selenium,每个调用都会转发给 Selenium,因此可以直接使用原始 driver,并在同一脚本中自由混用两者。
它的核心区别在于 API。Helium 不需要 HTML ID、XPath 或 CSS 选择器,而是通过 Button('Download') 这类用户可见的文字标签定位元素。同样功能的脚本通常比 Selenium 短 30% 到 50%,页面结构变化时也更不容易失效。
针对 Selenium 中较繁琐的操作,Helium 做了简化:无需切换即可操作嵌套 iframe 内的元素,弹窗打开或关闭时自动切换焦点,可按窗口标题的一部分切换窗口,并默认等待最多 10 秒让元素出现。显式等待也可通过 wait_until 简洁实现。
核心功能
- 01通过按钮、链接等可见文字定位元素,无需选择器。
- 02基于 Selenium 支持 Chrome 和 Firefox。
- 03无需切换即可操作嵌套 iframe 中的元素。
- 04自动处理弹窗,并可按窗口标题片段切换窗口。
- 05默认等待最多 10 秒,等待元素出现。
- 06可在同一脚本中混用 Helium 与原生 Selenium API。
适用场景
- 自动化重复性网页操作,例如填写表单或下载报表。
- 编写易读且不易因页面结构变化而失效的浏览器测试。
- 在元素通过可见文字更容易识别的页面上进行数据抓取。
快速上手
- 1
创建虚拟环境
python3 -m venv venv - 2
激活虚拟环境(Mac/Linux)
source venv/bin/activate - 3
使用 pip 安装 Helium
python -m pip install helium
使用前须知
- 需要预先安装 Chrome 或 Firefox。
- 维护者时间有限,通常不会回复问题,除非问题很容易解决。
收录于专题
标签
常见问题
- helium 是什么?
- 基于 Selenium 的 Python 浏览器自动化库,可按页面可见文字而非 CSS 选择器或 XPath 定位元素。 Helium 是一个用于自动化 Chrome 和 Firefox 浏览器的 Python 库。它底层封装 Selenium,每个调用都会转发给 Selenium,因此可以直接使用原始 driver,并在同一脚本中自由混用两者。
- helium 可以免费使用吗?用的什么许可证?
- helium 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- helium 还在维护吗?
- 活跃维护中。helium 最近一次提交是在 2026年10月22日。
- helium 适合用来做什么?
- 自动化重复性网页操作,例如填写表单或下载报表。 编写易读且不易因页面结构变化而失效的浏览器测试。 在元素通过可见文字更容易识别的页面上进行数据抓取。
- helium 怎么安装和运行?
- 创建虚拟环境: python3 -m venv venv 激活虚拟环境(Mac/Linux): source venv/bin/activate 使用 pip 安装 Helium: python -m pip install helium
- 在哪里获取 helium?
- 源代码和安装说明在 GitHub 上:https://github.com/mherrmann/helium
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
用高级 API 控制 Chrome 或 Firefox 的 JavaScript 库,默认无界面运行。
用统一 API 自动化控制 Chromium、Firefox 和 WebKit 浏览器的 Python 库,支持同步与异步两种调用方式。
面向 AI 智能体与应用的开源浏览器 API,提供可通过 Puppeteer、Playwright 或 Selenium 控制的 Chrome 沙箱。
一个用 Go 编写的 HTTP 服务,让 AI 智能体以低 token 消耗控制 Chrome,并支持多实例编排与实时面板。
基于 Chrome DevTools Protocol 的 Go 浏览器自动化与爬虫库,支持自动等待元素。