Jak automatizovat printscreany z html stránek s obrázky

Honza1

Zdravím

Měl bych takový dotaz - mám řádově stovky předdefinovaných URL na jeden web a nenapadá mě jak automatizovat Print-Screen z těchto stránek (jako by byla stránka otevřená v nějakém webovém prohlížeči).

Stránky obsahují html kód a obrázky gif (neanimovaný),png,jpg, neobsahují Javu, Videa, Flash a podobné věci. Stránka je generována přímo na základě vložené adresy. Není tam CAPTCHA, web naopak podporuje wget , jen je omezen počet dotazů za čas (řešení - sleep xxx s).

Díky za nápady.



Re:Jak automatizovat printscreany z html stránek s obrázky
« Odpověď #2 kdy: 08. 09. 2016, 07:09:00 »
wkhtmltopng
Děkuji za možnost editace příspěvku.

linux noob

Re:Jak automatizovat printscreany z html stránek s obrázky
« Odpověď #3 kdy: 08. 09. 2016, 07:53:28 »
Nedavno jsem taky potreboval screenshoty webu a pouzil jsem PhantomJS - maji primo example, ktrerej to zvladne.
https://github.com/ariya/phantomjs/blob/master/examples/rasterize.js

Re:Jak automatizovat printscreany z html stránek s obrázky
« Odpověď #4 kdy: 08. 09. 2016, 12:49:47 »
Doporučuju http://phantomjs.org/ nebo https://slimerjs.org/ - mají hotové služby pro screenshoty, takže stačí nainstalovat, spustit a screenshotovat. Osobně používám https://github.com/vbauer/manet kde si lze vybrat, zda se použije PhantomJS (WebKit) nabo SlimerJS (Gecko).

Původně jsem chtěl integrovat wkhtml2pdf/wkhtml2png, ale bohužel ta knihovna je zastaralá, nefunkční a bugy nikdo neřeší. V praxi to pro mě bylo nepoužitelné.


Jan Fuchs

Re:Jak automatizovat printscreany z html stránek s obrázky
« Odpověď #5 kdy: 09. 09. 2016, 09:27:08 »

#

Re:Jak automatizovat printscreany z html stránek s obrázky
« Odpověď #6 kdy: 09. 09. 2016, 11:25:52 »
Za me http://casperjs.org/ prisel me narozdil treba od selenia, ze ma clovek behem 5 minut hotovo ... takze na jednoduchy veci jako toto ideal. Beru z pohledu cloveka, co nikdy ten nastroj nevidel.

Re:Jak automatizovat printscreany z html stránek s obrázky
« Odpověď #7 kdy: 19. 04. 2017, 23:30:53 »
Ahoj

Koukam ted, ze jsem zapomnel dat zpetnou vazbu, diky za rady.

Resenim je take NodeJS - emulator Google Chrome.

https://github.com/sindresorhus/pageres
https://nodejs.org

Maly skript napr:

#!/usr/bin/env node
const Pageres = require('pageres');
process.argv
let url = "https://www.google.com/maps/@0.0,0.0,2z"
let res1 = "4096x4096"
let res2 = "4096x2048"
const pageres = new Pageres({delay: 2})
    .src(url, [ res1 ], {crop: true})
    .dest(__dirname)
    .run()
    .then(() => console.log('done'));

Omezeni na sirku-delku je max. 9999 pro vsechny stranky, u Google map to vypada na maximalni pocet obrazovych bodu 16 777 216, tedy 2na24.

gll

Re:Jak automatizovat printscreany z html stránek s obrázky
« Odpověď #8 kdy: 20. 04. 2017, 00:11:08 »
Kód: [Vybrat]
let url = process.env.ENV_VARIABLE;

kde ENV_VARIABLE je název proměnné.

marek

Re:Jak automatizovat printscreany z html stránek s obrázky
« Odpověď #9 kdy: 20. 04. 2017, 08:12:55 »
mozes pouzit screenshot machine na https://www.screenshotmachine.com

je tom freemium sluzba, mozes si vybrat, ci chces screenshot z desktopu/tabletu/telefonu