Fórum Root.cz

Hlavní témata => Software => Téma založeno: Honza1 07. 09. 2016, 23:37:25

Název: Jak automatizovat printscreany z html stránek s obrázky
Přispěvatel: Honza1 07. 09. 2016, 23:37:25
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.
Název: Re:Jak automatizovat printscreany z html stránek s obrázky
Přispěvatel: Jenda 07. 09. 2016, 23:51:30
https://www.abclinuxu.cz/blog/JDblog/2008/5/jak-generovat-nahledy-stranek-na-serveru
Název: Re:Jak automatizovat printscreany z html stránek s obrázky
Přispěvatel: to_je_jedno 08. 09. 2016, 07:09:00
wkhtmltopng
Název: Re:Jak automatizovat printscreany z html stránek s obrázky
Přispěvatel: linux noob 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
Název: Re:Jak automatizovat printscreany z html stránek s obrázky
Přispěvatel: Ondrej Nemecek 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é.
Název: Re:Jak automatizovat printscreany z html stránek s obrázky
Přispěvatel: Jan Fuchs 09. 09. 2016, 09:27:08
Selenium http://www.seleniumhq.org (http://www.seleniumhq.org).
Název: Re:Jak automatizovat printscreany z html stránek s obrázky
Přispěvatel: # 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.
Název: Re:Jak automatizovat printscreany z html stránek s obrázky
Přispěvatel: Honza1Ubuntu 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.
Název: Re:Jak automatizovat printscreany z html stránek s obrázky
Přispěvatel: gll 20. 04. 2017, 00:11:08
Kód: [Vybrat]
let url = process.env.ENV_VARIABLE;

kde ENV_VARIABLE je název proměnné.
Název: Re:Jak automatizovat printscreany z html stránek s obrázky
Přispěvatel: marek 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