10个低劣的开源无头阅读器

无头阅读器(Headless browser)是一种没有图形用户界面(GUI)的Web阅读器。这种阅读器经过在内存中渲染页面,并将结果发送回恳求它的用户或程序,成功了对网页的访问,而不会在屏幕上显示网页。以下是关于无头阅读器的详细解释:

定义与特点

运行场景

好处与局限性

提高了测试效率和准确性,由于可以在没有人工干预的状况下启动。

节俭了资源,由于不须要渲染图形界面。

易于集成到智能化流程中,如CI/CD流程。

干流工具与库

目前,市场上有多种无头阅读器工具和库可供选用,如Puppeteer(基于Chrome阅读器)、Selenium WebDriver(允许多种阅读器)等。这些工具和库提供了丰盛的API,使得控制无头阅读器变得愈加繁难和灵敏。

1.Puppeteer

GitHub Star:88K

开发言语:Node/TypeScript/JavaScript

2.Selenium WebDriver

GitHub Star:30K

开发言语:允许Java、Python、Javascript、Ruby、.Net、C++、Rust...

3.Playwright

GitHub Star:11.4K+

开发言语:Python

Playwright是一个用于成功Web阅读器智能化的Python库。允许端到端测试,提供弱小的性能,允许多阅读器,包括:Chromium、Firefox和WebKit。

4.Chromedp

GitHub Star:10.8K+

开发言语:Golang

Chromedp是一个可以极速驱动Chrome DevTools协定的阅读器的Golang库。无需外部依赖。

可以检查Golang 的各种运行案例:

5.Headless Chrome Crawler

GitHub Star:5.5K

开发言语:JavaScript

GitHub Star:4.1K

开发言语:Python

Splash是一个允许JavaScript渲染的HTTP API服务。是一个轻量级的阅读器,具备HTTP API,在Python 3中经常使用Twisted和QT5成功。

得益于它的极速、轻量级和有形态等个性,使其易于经常使用和推行。

7.Splinter

GitHub Star:2.7K

开发言语:Python

8.Serverless-chrome

Github Star:2.9K

开发言语:JavaScript

这是一个无主机Chrome 。这个名目标目标关键是为在无主机函数调用时期经常使用Headless Chrome提供框架。Serverless-chrome担任构建和捆绑Chrome二进制文件,并确保在口头无主机函数时Chrome正在运转。此外,该名目还提供了一些经常出现形式的服务,例如:对页面启动屏幕截图、打印到PDF、页面抓取等。

GitHub Star:1.7K

开发言语:Ruby

Ferrum是一个用于成功Chrome智能化的Ruby库。它提供了一种控制阅读器的方法,而不须要像Selenium这样的驱动程序。Ferrum可以处置诸如阅读网页、与元素交互以及捕捉屏幕截图等义务。

它关于Web抓取、智能化测试和模拟用户交互十分有用。Ferrum允许在无头和非无头形式下运转,使其能够满足各种智能化需求。

GitHub Star:1.5K

Surf是一个Golang库,Surf不只仅是一个Web内容提取的Go处置打算,还成功了一个可以用于编程控制的虚构Web阅读器。

Surf被设计成像Web阅读器一样,性能包括:cookie治理、历史记载、书签、用户代理、表单提交、经过jQuery样式的CSS选用器选用和遍历DOM、抓取图像、样式表等。16.6k+ 开源精准 IP 地址库低代码上班流引擎 flowlong 颁布 1.0.0 正式版Web 端视频编辑工具,相似剪映Web版1.8k 开源的实时数据一致平台2024 年 8 月 TIOBE 指数,编程言语排行榜 Python 的排名初次超越 18%

您可能还会对下面的文章感兴趣: