Skip to content

Using headless Chrome as an automated screenshot tool (alternative to PhantomJS)

Notifications You must be signed in to change notification settings

lnklnklnk/chrome-headless-screenshots

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Using headless Chrome as an automated screenshot tool

Chrome 57 brings headless browser support to Linux, and Chrome 59 will have cross-platform support (currently in beta).

This repo contains an example implementation of using Chrome as an automated screenshot tool on linux, which is a common use case for PhantomJS.

Contributions are welcome.

Setup

The setup below was used on a vagrant running Ubuntu 14 Trusty Tahr. It assumes you've already cloned the repo and run npm install.

# Install Google Chrome
# https://askubuntu.com/questions/79280/how-to-install-chrome-browser-properly-via-command-line
sudo apt-get install libxss1 libappindicator1 libindicator7
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome*.deb  # Might show "errors", fixed by next line
sudo apt-get install -f

# Install Node Stable (v7)
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs

# Run Chrome as background process
# https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md
# --disable-gpu currently required, see link above
google-chrome --headless --hide-scrollbars --remote-debugging-port=9222 --disable-gpu &

# Take the screenshot
nodejs index.js --url="http://www.eff.org"

The screenshot will then be available as output.png

Other Resources

About

Using headless Chrome as an automated screenshot tool (alternative to PhantomJS)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%