Remote Browser:类似 Puppeteer 的浏览器自动化框架
Remote Browser 基于 Web Extensions API 标准构建,是一个使用 JavaScript 以编程方式控制诸如 Chrome 和 Firefox 之类的网络浏览器的库。此前你可能已经听说过类似的浏览器自动化框架,例如 Puppeteer 和 Selenium。
Remote Browser 与这些框架非常相似,它可用于完成与 UI 测试、服务器端渲染(SSR)以及网页抓取相关的各种任务。但不同之处在于它使用标准的跨浏览器兼容技术构建,其主要目标是促进与现有 API 的交互,而不是创建自己新的 API。
下面这段示例代码的作用是导航至选项卡并使用 Remote Browser 进行截图
import Browser from 'remote-browser'; (async () => { // Create and launch a new browser instance. const browser = new Browser(); await browser.launch(); // Directly access the Web Extensions API from a remote client. const tab = await browser.tabs.create({ url: 'https://intoli.com' }); const screenshot = await browser.tabs.captureVisibleTab(); })();
本文来自云栖社区合作伙伴“开源中国”
本文作者:局长

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
简单易懂的 Go 内存分配原理解读
1. 前言 编写过C语言程序的肯定知道通过malloc()方法动态申请内存,其中内存分配器使用的是glibc提供的ptmalloc2。 除了glibc,业界比较出名的内存分配器有Google的tcmalloc和Facebook的jemalloc。二者在避免内存碎片和性能上均比glic有比较大的优势,在多线程环境中效果更明显。 Golang中也实现了内存分配器,原理与tcmalloc类似,简单的说就是维护一块大的全局内存,每个线程(Golang中为P)维护一块小的私有内存,私有内存不足再从全局申请。 另外,内存分配与GC(垃圾回收)关系密切,所以了解GC前有必要了解内存分配的原理。 2. 基础概念 为了方便自主管理内存,做法便是先向系统申请一块内存,然后将内存切割成小块,通过一定的内存分配算法管理内存。 以64位系统为例,Golang程序启动时会向系统申请的内存如下图所示: 预申请的内存划分为spans、bitmap、arena三部分。其中arena即为所谓的堆区,应用中需要的内存从这里分配。其中spans和bitmap是为了管理arena区而存在的。 arena的大小为512G,为了方...
- 下一篇
Robot Framework Metrics Dashboard
介绍 下面介绍一款Robot Framework(以下简称RF)测试指标的可视化Dashboard工具robotmetrics 效果如下图所示: robot metrics 安装使用 工作原理 使用RF的API读取RF的输出文件output.xml 使用API获取Suite, Test Case, Keyword, Status, Start Time, End Time以及Elapsed time值 使用BeautifulSoup库将数据生成html 报告 在工程中使用 从github仓库中下载robotmetrics.py文件 将robotmetrics.py文件拷贝到工程项目中 安装beautifulsoup库pip install beautifulsoup4 执行robotmetrics.py文件 案例1:`robotmetrics.py`文件与`output.xml`文件在同目录 python robotmetrics.py 案例2:指定`output.xml`文件路径 python robotmetrics.py -inputpath .\Result\ 案例3:指定文件...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8编译安装MySQL8.0.19
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16