自动化工具 活跃维护

HeadlessBrowsers

dhamaniasad/HeadlessBrowsers

几乎所有现存的无头网页浏览器列表

6702
Stars 标星
453
Forks 分支
177
Watchers 关注
21
Open Issues
—
主要语言
CC0-1.0
开源协议
775 KB
仓库大小
12 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:dhamaniasad/HeadlessBrowsers
git clone https://github.com/dhamaniasad/HeadlessBrowsers.git
git clone git@github.com:dhamaniasad/HeadlessBrowsers.git
README.md master

英文原文正文为项目原始 README(英文),本站后续会翻译为中文,当前仅剔除图片与无关章节并统一排版。

无头浏览器

✨ 通过 MemoryPlugin [赞助] 在你所有的 AI 工具中获得长期记忆

几乎存在的所有无头网页浏览器列表

一种没有图形用户界面的网页浏览器,通过编程控制。用于自动化、测试及其他用途。

浏览器引擎

这些浏览器引擎可以完全渲染网页或在虚拟DOM中运行JavaScript

名称 | 关于 | 支持的语言 | 许可证 :------------ |:---------------| :----- | :-----------
|Chromium Embedded Framework |CEF是一个基于Google Chromium项目的开源项目。 | JavaScript | BSD |
|Erik | 基于Kanna和WebKit的无头浏览器。 | Swift | MIT |
|jBrowserDriver | 一个与Selenium兼容的无头浏览器,完全用Java编写。基于WebKit。可与任何Selenium Server绑定一起使用。 | Java | Apache License v2.0 |
|PhantomJS | [已停止维护] PhantomJS 是一个可通过JavaScript API脚本化的无头WebKit浏览器。它对各种Web标准提供快速且原生的支持:DOM处理、CSS选择器、JSON、Canvas和SVG。 | JavaScript, Python, Ruby, Java, C#, Haskell, Objective-C, Perl, PHP, R(通过 Selenium) | BSD 3-Clause |
|Splash | Splash 是一个带有HTTP API的JavaScript渲染服务。它是一个轻量级浏览器,带有HTTP API,由Python使用Twisted和QT实现。 | 任意 | BSD 3-Clause |
|Surf|Surf是一个开源项目,实现了可通过程序控制的虚拟网页浏览器 | Go | MIT

多驱动

这些库可以控制多个浏览器引擎(通常使用 Selenium)

名称 | 介绍 | 支持的语言 | 许可证 :------------ |:---------------| :----- | :-----------
|CasperJS | [不再维护] CasperJS 是一个开源导航脚本和测试工具,用 JavaScript 编写,适用于 PhantomJS WebKit 无头浏览器和 SlimerJS(Gecko)。 | JavaScript | MIT |
|Geb | Geb 是 WebDriver 的 Groovy 接口。| Groovy | Apache |
|Playwright | Playwright 是一个 Node 库,用单一 API 自动化 Chromium、WebKit 和 Firefox 浏览器 | TypeScript | Apache |
|playwright-dotnet | Playwright for .NET 是一个库,用单一 API 自动化 Chromium、Firefox 和 WebKit 浏览器。 | .NET | MIT |
|playwright-python | Playwright for Python 是一个库,用单一 API 自动化 Chromium、Firefox 和 WebKit 浏览器。 | Python | Apache |
|playwright-java | Playwright for Java 是一个库,用单一 API 自动化 Chromium、Firefox 和 WebKit 浏览器。 | Java | Apache |
|playwright-go | Playwright for Go 是一个库,用单一 API 自动化 Chromium、Firefox 和 WebKit 浏览器。 | Go | MIT |
|Selenium | Selenium 是一套用于跨多个平台自动化网页浏览器的工具。| JavaScript, Python, Ruby, Java, C#, Haskell, Objective-C, Perl, PHP, R, C | Apache |
|Splinter | Splinter 是一个开源工具,用 Python 测试 web 应用程序。它允许你自动化浏览器操作,例如访问 URL 和与项目交互。| Python | - |
|SST | SST(selenium-simple-test)是一个 web 测试框架,使用 Python 生成基于浏览器的功能测试。| Python | - |
|Watir | 使用 Ruby 最优雅的方式操作 Selenium WebDriver。| Ruby | MIT |

PhantomJS 驱动

这些库控制 PhantomJS

名称 | 介绍 | 支持的语言 | 许可证 :------------ |:---------------| :----- | :-----------
|Ghostbuster | 通过 phantom.js 实现自动化浏览器测试,消除所有困难!这意味着你得到一个真实浏览器,拥有真实 DOM,并且可以进行真实测试!| JavaScript | 未指定 |
|jedi-crawler | Lightsabing Node/PhantomJS 爬虫;抓取动态内容,无需麻烦 | JavaScript | 未指定 |
|Lotte| Lotte 是一个基于 PhantomJS 的无头自动化测试框架,灵感来自 Ghostbuster。 | JavaScript | MIT |
|phantompy | Phantompy 是一个无头 WebKit 引擎,具有强大的 Python 风格 API,构建在 Qt5 Webkit 之上|Python| LGPL-2.1 |
|X-RAY | 支持字符串、数组、对象数组、嵌套对象结构、选择器 API、分页、爬虫、并发、节流、延迟、超时和可插拔驱动(PhantomJS、HTTP)|JavaScript| MIT |
|Horseman | 基于 Promise 的 Node.js 模块,用于 PhantomJS。特点包括可链式 API、可理解的控制流、支持多个标签页以及内置 jQuery。|JavaScript| MIT |

Chromium 驱动

这些库用于控制 Chromium

名称 | 介绍 | 支持的语言 | 许可证 :------------ |:---------------| :----- | :-----------
|Awesomium | 基于 Chromium 的无头浏览器引擎|C , .NET| 免费/商业 |
|无头 Chromium | 使用 --headlesss 标志激活的 Chromium 功能,目前可在 Chromium 夜间构建中使用,尚未发布 | C | 开源 |
|Puppeteer | 来自 Chrome DevTools 团队的无头 Chrome Node API|JavaScript| Apache |
|PuppeteerSharp | PuppeteerSharp 是官方无头 Chrome Node.JS Puppeteer API 的 .NET 移植版|.NET| MIT |
|chrome-remote-interface | Node.js 用的 Chrome 调试协议接口|JavaScript| MIT |
|Chromy | 特点包括可链式 API、移动设备模拟、基本 API 如 JavaScript 评估。|JavaScript| MIT |
|chromedp | 使用 Chrome 调试协议,无需外部依赖(如 Selenium、PhantomJS 等)即可更快、更简单地驱动浏览器(Chrome、Edge、Safari、Android 等)|Go| MIT |
|Chromeless | Chrome 自动化变得简单。可在本地或 AWS Lambda 无头运行。 | JavaScript | MIT |
|Chrome PHP | 通过 Chrome Devtools 协议驱动 Chromium 或 Google Chrome 的 PHP API。 | PHP | 公平 |
|Wendigo | 基于 Puppeteer 的测试导向浏览器自动化库。 | JavaScript | GPL-3.0 |
|cdp4j | Java 的网页自动化库。可用于网页自动化和网页测试。它使用 Google Chrome DevTools 协议来自动化基于 Chrome/Chromium 的浏览器。 | Java | cdp4j 商业许可证 |
|Pyppeteer | Puppeteer JavaScript(无头)Chrome/Chromium 浏览器自动化库的 Python 版本 | Python | MIT |
|无头 Chrome | 一个用于通过 DevTools 协议控制无头 Chrome 或 Chromium 的高级 API。 | Rust | 无

Webkit 驱动

这些驱动程序控制 Webkit 的进程内实例

名称 | 关于 | 支持的语言 | 许可证 :------------ |:---------------| :----- | :-----------
|Browserjet | 运行自定义构建的 Webkit,通过 node.js 接口控制。 | JavaScript | 未指定 |
|ghost.py | ghost.py 是一个用 Python 编写的 Webkit Web 客户端。 | Python | MIT |
|headless_browser | 基于 WebKit 的无头浏览器,使用 C 编写。 | C | 未指定 |
|Jabba-Webkit | Jabba 的无头 Webkit 浏览器,用于抓取 AJAX 驱动的网页。 | Python | 未指定 |
|Jasmine-Headless-Webkit | jasmine-headless-webkit 使用 QtWebKit 小部件运行测试,而无需渲染像素。 | Python, JavaScript, Ruby | 免费 |
|Python-Webkit | Python-Webkit 是 Webkit 的 Python 扩展,可完全访问 Webkit 的 DOM。 | Python | GNU |
|Spynner | 支持 AJAX 的 Python 编程式网页浏览模块。 | Python | 未指定 |
|Webloop | 可脚本化的无头 WebKit,提供 Go API。 | Go | BSD 三条款 |
|wkhtmltopdf wkhtmltox wkhtmltoimage | 将 HTML 渲染为 PDF 及其他图像格式的命令行工具。 | shell, C | LGPLv3 |
|WKZombie | 基于 WebKit 和 hpple/libxml2 的 iOS 功能性无头浏览器(支持 JSON)。 | Swift | MIT |

其他驱动

这些库用于控制较不常见的浏览器或操作系统提供的网页库

名称 | 关于 | 支持的语言 | 许可证 :------------ |:---------------| :----- | :-----------
|Cypress | Cypress 支持端到端、集成和单元测试,并使调试测试变得简单。默认引擎是无界面的 Electron。 |JavaScript| MIT |
|Nightmare | Nightmare 是一个高级浏览器自动化库,作为 PhantomJS 的更简单替代方案。它运行在 Electron 引擎上。 |JavaScript| MIT |
|grope | macOS WebKit 框架的 RubyCocoa 接口 |RubyCocoa| MIT |
|SlimerJS | SlimerJS 类似于 PhantomJS,不过它运行 Gecko,即 Mozilla Firefox 的浏览器引擎,而不是 Webkit(并且它尚未真正无界面)。|JavaScript| Mozilla 2.0 |
|SpecterJS | PhantomJS 的可脚本化无界面 Internet Explorer 移植版。 | JavaScript | MIT |
|trifleJS | 使用 .NET WebBrowser 类的无界面 Internet Explorer 浏览器,带有在 V8 引擎上运行的 JavaScript API。|JavaScript| MIT |

伪浏览器引擎

这些库通常是简单或仅支持 HTML 的浏览器

名称 关于 支持的语言 许可
AngleSharp .Net HTTP解析库 .NET MIT
Guillotine 一个用C#编写的.NET无头浏览器 .NET LGPL-3.0
benv 在 Node.js 中模拟浏览器环境并进行无头测试客户端代码 JavaScript MIT
browser.rb 基于Nokogiri和TheRubyRacer的无头Ruby浏览器 Ruby 未指定
BrowserKit BrowserKit 模拟网页浏览器的行为 PHP MIT
DamonJS 用于导航URL和执行任务的机器人 JavaScript Apache
Headless .Net快速网页验收测试的无头浏览器支持 .NET MIT
HeadlessBrowser 一个非常微型的无头浏览器,用于在Node.js上测试DOM JavaScript 未指定
HtmlUnit HtmlUnit是为Java程序设计的“无GUI浏览器” Java Apache
Jaunt Java网页抓取和自动化API Java Apache(每月版)
Jauntium 免费Java库,可轻松自动化Chrome、Firefox、Safari、Edge、IE及其他现代浏览器 Java Apache
JSDom 用于Node.js的WHATWG DOM和HTML标准的JavaScript实现 JavaScript MIT
MechanicalSoup 用于自动网站交互的Python库 Python MIT
mechanize 有状态的编程网页浏览 Python BSD 3-Clause,ZPL 2.1
node-as-browser 在Node.js中创建类似浏览器的环境 JavaScript MIT
RoboBrowser 一个无需独立浏览器即可浏览网页的简单Python库 Python BSD 3-Clause
SimpleBrowser 为自动化任务设计的灵活直观的网页浏览器引擎,基于.Net 4框架 .NET BSD 3-Clause
twill Twill是一种用于与基本HTML页面交互的简单语言(不支持JavaScript) Python MIT
WeasyPrint WeasyPrint是一个HTML和CSS的可视化渲染引擎,可导出为PDF,旨在支持网页打印标准 Python BSD 3-Clause
WWW::Mechanize 用于 Perl 的无头浏览器,具有许多插件和扩展,特别是用于测试的 Test::WWW:Mechanize Perl Perl 5
X-RAY 支持字符串、数组、对象数组、嵌套对象结构、选择器 API、分页、爬虫、并发、节流、延迟、超时,以及可插拔驱动(PhantomJS,HTTP) JavaScript MIT
Xidel (互联网工具) 一个基于 XQuery 的命令行网页爬虫,用于静态 X/HTML 页面和 JSON-API。 FreePascal, XQuery GPL-2
Zombie.js Zombie.js 是一个轻量级框架,用于在模拟环境中测试客户端 JavaScript 代码。无需浏览器。 JavaScript MIT

在浏览器中运行

名称 | 关于 | 支持的语言 | 许可证 :------------ |:---------------| :----- | :-----------
|DalekJS | [不再维护,推荐使用 TestCafé] 使用 JavaScript 进行自动化跨浏览器测试。|JavaScript| MIT |
|TestCafé | 现代网络开发堆栈的自动化浏览器测试。|JavaScript| MIT |
|Sahi | Sahi 是一个跨浏览器自动化/测试工具,具有录制和回放脚本的功能。|JavaScript, Java, Ruby, PHP| Apache / 商业 |
|WatiN | .Net中的Web应用程序测试|.NET| Apache 2.0 |

其他工具

名称 | 关于 | 支持的语言 | 许可证 :------------ |:---------------| :----- | :-----------
|browser-launcher | 检测并启动浏览器版本,无论是否以无头模式|JavaScript| MIT |
|Headless Recorder | Chrome 扩展程序,记录您的浏览器操作并生成 Playwright 或 Puppeteer 脚本 |JavaScript| MIT |

本站来源与版权声明
  • 本文标题:HeadlessBrowsers - 几乎所有现存的无头网页浏览器列表
  • 本文链接:https://cn121.com/automation/dhamaniasad-headlessbrowsers.html
  • 原项目:dhamaniasad/HeadlessBrowsers 版权归原作者 dhamaniasad 及贡献者所有
  • 收录信息:本站于 2026-10-10 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 CC0-1.0(查看 LICENSE 原文),本站转载其原始文档(未改动文字,仅剔除图片与无关章节);使用、修改、分发请以该仓库 LICENSE 原文为准。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 dhamaniasad/HeadlessBrowsers。
  • 内容说明:本页正文为原项目 README 原文(英文),本站后续会翻译为中文(当前尚未译出,仅将二级标题译为中文,便于按栏目定位;标题原文可在下方原仓库中查看),仅剔除了图片与赞助等无关章节、并把相对链接改为绝对地址;页首简介为机器翻译自仓库描述。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。