2017-08-19 23:06:34 +00:00
|
|
|
# Headless Browsers
|
|
|
|
|
2017-09-24 23:40:09 +00:00
|
|
|
The library, eschewing unstable and nascent ECMAScript features, plays nicely
|
2017-08-19 23:06:34 +00:00
|
|
|
with most headless browsers. This demo shows a few common headless scenarios.
|
|
|
|
|
|
|
|
## PhantomJS
|
|
|
|
|
2017-09-24 23:40:09 +00:00
|
|
|
This was tested in PhantomJS 2.1.1, installed using the node module:
|
2017-08-19 23:06:34 +00:00
|
|
|
|
|
|
|
```bash
|
|
|
|
$ npm install -g phantomjs
|
|
|
|
$ phantomjs phantomjs.js
|
|
|
|
```
|
|
|
|
|
2017-12-09 07:17:25 +00:00
|
|
|
## Chrome Automation
|
2017-08-19 23:06:34 +00:00
|
|
|
|
2017-12-09 07:17:25 +00:00
|
|
|
This was tested in puppeteer 0.9.0 (Chromium revision 494755) and `chromeless`:
|
2017-08-19 23:06:34 +00:00
|
|
|
|
|
|
|
```bash
|
|
|
|
$ npm install puppeteer
|
|
|
|
$ node puppeteer.js
|
2017-12-09 07:17:25 +00:00
|
|
|
|
|
|
|
$ npm install -g chromeless
|
|
|
|
$ node chromeless.js
|
2017-08-19 23:06:34 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
Since the main process is node, the read and write features should be placed in
|
|
|
|
the webpage. The `dist` versions are suitable for web pages.
|
|
|
|
|
2017-12-09 07:17:25 +00:00
|
|
|
|
|
|
|
## wkhtmltopdf
|
|
|
|
|
|
|
|
This was tested in wkhtmltopdf 0.12.4, installed using the official binaries:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ wkhtmltopdf --javascript-delay 20000 http://oss.sheetjs.com/js-xlsx/tests/ test.pdf
|
|
|
|
```
|
|
|
|
|
2017-08-19 23:06:34 +00:00
|
|
|
## SlimerJS
|
|
|
|
|
2017-09-24 23:40:09 +00:00
|
|
|
This was tested in SlimerJS 0.10.3 and FF 52.0, installed using `brew` on OSX:
|
2017-08-19 23:06:34 +00:00
|
|
|
|
|
|
|
```bash
|
|
|
|
$ brew install slimerjs
|
|
|
|
$ slimerjs slimerjs.js
|
|
|
|
```
|
|
|
|
|
2017-09-24 23:40:09 +00:00
|
|
|
[![Analytics](https://ga-beacon.appspot.com/UA-36810333-1/SheetJS/js-xlsx?pixel)](https://github.com/SheetJS/js-xlsx)
|