phantomjs-node

PhantomJS integration module for NodeJS

Github星跟踪图

Notice

Development on this project has been suspended due to lack of support for PhantomJs.

phantom - Fast NodeJS API for PhantomJS

NPM

NPM Version
NPM Downloads
Linux Build
Node Version

Super easy to use

const phantom = require('phantom');

(async function() {
  const instance = await phantom.create();
  const page = await instance.createPage();
  await page.on('onResourceRequested', function(requestData) {
    console.info('Requesting', requestData.url);
  });

  const status = await page.open('https://stackoverflow.com/');
  const content = await page.property('content');
  console.log(content);

  await instance.exit();
})();

Using Node v7.9.0+ you can run the above example with node file.js

See examples folder for more ways to use this module.

Use it with npx

You can quickly test any website with phantomjs-node without needing to install the package.

$ npx phantom@latest https://stackoverflow.com/

The above command is very useful to test if your website works on older browsers. I frequently use it to ensure polyfills have been installed correctly.

Deprecation warnings of PhantomJs

In March 2018, the owner of PhantomJS announced suspension of development. There hasn't been any updates since. Since phantomjs-node is only a wrapper around phantomjs, then you should use it at your own risk because the underlying dependency is no longer supported. I plan to maintain this project until usage has dropped significantly.

Installation

Node v6.x and later

Latest version of phantom does require Node v6.x and later. You can install with

$ npm install phantom --save

Node v5.x

To use version 3.x you need to have at least Node v5+. You can install it using

$ npm install phantom@3 --save

Versions older than 5.x, install with

$ npm install phantom@2 --save

Documents

Pooling

Creating new phantom instances with phantom.create() can be slow. If
you are frequently creating new instances and destroying them, as a
result of HTTP requests for example, it might be worth creating a pool
of instances that are re-used.

See the phantom-pool module
for more info.

Tests

To run the test suite, first install the dependencies, then run npm test:

$ npm install
$ npm test

Contributing

This package is under development. Pull requests are welcomed. Please make sure tests are added for new functionalities and that your build does pass in TravisCI.

People

The current lead maintainer is Amir Raminfar

List of all contributors

License

ISC

主要指标

概览
名称与所有者amir20/phantomjs-node
主编程语言JavaScript
编程语言JavaScript (语言数: 1)
平台
许可证ISC License
所有者活动
创建于2011-10-01 06:01:36
推送于2019-12-03 19:01:28
最后一次提交2019-12-03 11:01:27
发布数62
最新版本名称v6.3.0 (发布于 2019-08-20 09:37:55)
第一版名称v1.0.0 (发布于 )
用户参与
星数3.5k
关注者数91
派生数480
提交数761
已启用问题?
问题数0
打开的问题数0
拉请求数191
打开的拉请求数9
关闭的拉请求数150
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?