Repolode
mherrmann

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. 1

    创建虚拟环境

    python3 -m venv venv
  2. 2

    激活虚拟环境(Mac/Linux)

    source venv/bin/activate
  3. 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 数据每日更新。

相关项目