Takes screenshots of DOM elements, like Jake Gyllenhaal 📸
Check out the blog post.
Make sure you've got a current node and yarn installed. Then:
$ yarn install
$ TARGET_HOST="https://www.innoq.com" yarn start
Build image:
$ docker build -t innoq/hotshot .
Start server:
$ docker run --init -p 5000:5000 -e PORT=5000 -e TARGET_HOST='https://www.innoq.com' innoq/hotshot
$ curl -G "http://localhost:5000/shoot?path=/relative/path&selector=.my-css-class" > screenshot.jpeg
Hotshot can serve webp images if requested in the Accept
header. Example:
$ curl -G -H "accept: image/webp" "http://localhost:5000/shoot?path=/relative/path&selector=.my-css-class" > screenshot.webp
Please note: any Accept header values not directly specifying webp support (e. g. */*
) automatically get served jpeg.