Komunikace JavaScript s Bash

Komunikace JavaScript s Bash
« kdy: 19. 04. 2017, 23:25:11 »
Ahoj

Mam Javaskript na par radku, ktery pracuje v programu NodeJS, vytvari nahledy html stranek (emulace prohlizece).

Kód: [Vybrat]
#!/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'));

Jde mi konkretne o radek:

Kód: [Vybrat]
let url = "https://www.google.com/maps/@0.0,0.0,2z"

Zde bych chtel zadavat URL adresu z Bash skriptu, pomoci promennne. S Bash pracuji, ale u JS nevim vubec nic. Doposavad jsem pouze rucne upravil dany JavaScript. Adresa URL neni nutne z Google Maps, to je jen priklad. Vetsinou spis pujde o jednodusi html stranky.

Zmineny skript je index.js a spousteni jen ./index.js

Skript je zaroven resenim tohoto vlakna:

https://forum.root.cz/index.php?topic=13820.0
« Poslední změna: 20. 04. 2017, 08:50:47 od Petr Krčmář »


gll

Re:Komunikace JavaSkript s Bash
« Odpověď #1 kdy: 20. 04. 2017, 00:25:46 »
Kód: [Vybrat]
let url = process.env.ENV_VARIABLE;

kde ENV_VARIABLE je název proměnné.

Pv

Re:Komunikace JavaSkript s Bash
« Odpověď #2 kdy: 20. 04. 2017, 01:48:06 »
Případně
node index.js http://url.com/...
a v index.js
let url = process.argv[2]

Re:Komunikace JavaScript s Bash
« Odpověď #3 kdy: 20. 04. 2017, 13:37:46 »
Diky moc

Truhe reseni funguje dobre.

Jinak pro vytvoreni nastenne mapy lze upravit skript index.js :

#!/usr/bin/env node
const Pageres = require('pageres');
process.argv
let url = process.argv[2]
let res1 = "9999x9999"
const pageres = new Pageres({delay: 2})
    .src(url, [ res1 ], {crop: true})
    .dest(__dirname)
    .run()
    .then(() => console.log('done'));

a potom zadat:

 node index.js "http://www.openstreetmap.org/"

V pripade Google Maps v index.js nastavime rozliseni:
let res1 = "4096x4096"

a po te:
 node index.js "https://www.google.com/maps/@0.0,0.0,2z"
Mapa s terenem:
 node index.js "https://www.google.com/maps/@0,0,2z/data=!5m1!1e4"
Satelitni mapu se nepodarilo vytvorit, URL je: https://www.google.com/maps/@0,0,19741474m/data=!3m1!1e3!5m1!1e4

V pripade tvorby map, hlavne OSM 9999x9999 to sezere stovky MB a asi i prez GB RAM, potreba je min. 2 GB ram v systemu.

Skript jako takovy byl ale spis urcen pro vytvoreni vetsiho mnozstvi nahledu v malem rozliseni u jednoduchych stranek. Mapy jen tak pro pobaveni.