简介
PhantomJS 是一个基于 WebKit 的服务器端 JavaScript API,它支持无头浏览器的自动化,用于网页截图、页面渲染、网络监测等任务。PhantomJS 不支持 JavaScript ES6,也不再维护更新了。因此,一个基于 PhantomJS 的云服务 PhantomJSCloud 去年开源了他们的 SDK,提供了一个更好的替代方案。
npm 包 phantomjscloud 是 PhantomJSCloud 的 Node.js 客户端,可以通过 npm 安装并进行客户端调用。
安装
使用 npm 进行安装:
npm install phantomjscloud --save
使用
创建 PhantomJSCloud 实例
在使用 phantomjscloud 之前,我们需要通过 API Key 获取一个实例。
const { PhantomJsCloud } = require("phantomjscloud"); const phantomJsCloud = new PhantomJsCloud({ apiKey: "[your api key here]" });
使用实例执行任务
PhantomJSCloud 支持以下三种用例:
- 抓取网页。
- 渲染 PDF。
- 执行脚本。
以下是一些具体的示例。
抓取网页
-- -------------------- ---- ------- ------ -- -- - ----- ----------- - - ---- ------------------------ ----------- ------ ------------- ------ --------- - ------ ----- ------- ---- - -- ----- ------------ - ----- ----------------------------- ------------------------------------------------------------------------------------- ------- ----------- -- -------------------------- -----
渲染 PDF
-- -------------------- ---- ------- ------ -- -- - ----- ---------- - - ---- ------------------------ ----------- ------ ------------- ------ --------- - ------ ----- ------- ---- -- ---------- - ------- ----- ------------ ---------- - -- ----- ----------- - ----- ----------------------------- ------------------------------------------------------------------------------------- ------- ---------- -- ------------------------- -----
执行脚本
-- -------------------- ---- ------- ------ -- -- - ----- ------------- - - ---- --------------------------------------------- ---------- ------------ -------- -- ---- ------ ---- ------------------ ------- ---- ------ -------------------- --------------- ------- - --- ---- - --- --- ----- - --------------- --- ---- - - -- - - ------------- ---- - ------------------------- - ------ ----- - -- ----- -------------- - ----- ----------------------------- ------------------------------------------------------------------------------------- ------- ------------- -- ---------------------------- -----
总结
npm 包 phantomjscloud 是一个基于 PhantomJSCloud 的 Node.js 客户端,可以通过 npm 安装并进行客户端调用。它支持抓取网页、渲染 PDF 和执行脚本三种用例,可以用于网页截图、页面渲染、网络监测等任务。如果你在使用 PhantomJS 时遇到了问题,可以考虑尝试一下这个替代方案。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/80347