je cherche un navigateur commandable en ligne de commande et permettant de retourner un résutat à un script shell.
Qu'est-ce que tu veux faire ?
N'importe quel navigateur peut se lancer "en ligne de commande" par exemple : firefox http://www.monsite.tld
Si c'est pour chercher des pages, lancer une commande sur une interface web etc., il y a wget et curl qui sont faits pour ça.
Par exemple : Allumer ou éteindre les voyants d'une neufbox : -------
#!/bin/bash if zenity --title "Allumage LEDs Neufbox" --question --text "On allume les Leds ?"; then LEDS="on" else LEDS="off" fi wget --post-data="leds_state=$LEDS" http://192.168.1.1/state -O /dev/null
-- Serge http://leserged.online.fr/ Mon blog: http://cahierdesergio.free.fr/ Soutenez le libre: http://www.framasoft.org
Une Bévue
Le 31/10/2015 08:21, Sergio a écrit :
Le 31/10/2015 07:05, Une Bévue a écrit :
je cherche un navigateur commandable en ligne de commande et permettant de retourner un résutat à un script shell.
Qu'est-ce que tu veux faire ?
comme je le disait, retourner un résultat de la page.
Je m'explique "mieux", j'ai une page de "géolocalisation inversée", dans un champ input j'entre une adresse du genre : 22 rue du Lapin qui fume, 75001 Paris, France et ça me donne latitude, longitude, élévation.
c'est ce que je voudrais lire dans un script shell.
Bon, j'ai trouvé une solution grâce à : -- Mac OS X Hints -- Useful script examples for Safari -- http://hints.macworld.com/article.php?story 100803094600903
Ça m'oblide à utiliser Safari, alors qu'Opera est mon navigateur par défaut, pas très grave.
J'ai un JavaScript dans ma page qui écrit dans un <pre id='result' /> un objet linéarisé par json : document.getElementById('result').innerHTML = JSON.stringify(coordinates);
Je récupère l'objet linéarisé par AppleScript : set jsCode to "document.getElementById('result').innerHTML;"
tell application "Safari" set result to (do JavaScript jsCode in current tab of window 1) return result end tell
lequel script "SafariTabResult" est lu en CLI par : $ osascript '/Users/yt/dev/AS/SafariTabContent/SafariTabResult.scpt'
et, pour finir, plutôt qu'au Terminal, je lance ce script par un autre script Ruby cette fois-ci : $ /Users/yt/Sites/Photos/GMaps/address_coordinates_read.rb {"address":{"street":"55 Rue du Faubourg Saint-Honoré","zipcode":75008,"city":"Paris","country":"France","latitude":"48.8706011","longitude":"2.3169533","elevation":"32.71"},"click":{"latitude":"48.8625691","longitude":"2.3218918","elevation":"26.90"}} address : street => 55 Rue du Faubourg Saint-Honoré zipcode => 75008 city => Paris country => France latitude => 48.8706011 longitude => 2.3169533 elevation => 32.71 click : latitude => 48.8625691 longitude => 2.3218918 elevation => 26.90
la récupération des données GPS me sert par ailleurs à ajouter ces données sur dand l'EXIF de photos qui ont été prises sans info GPS.
Le 31/10/2015 08:21, Sergio a écrit :
Le 31/10/2015 07:05, Une Bévue a écrit :
je cherche un navigateur commandable en ligne de commande et
permettant de retourner un résutat à un script shell.
Qu'est-ce que tu veux faire ?
comme je le disait, retourner un résultat de la page.
Je m'explique "mieux", j'ai une page de "géolocalisation inversée", dans
un champ input j'entre une adresse du genre :
22 rue du Lapin qui fume, 75001 Paris, France
et ça me donne latitude, longitude, élévation.
c'est ce que je voudrais lire dans un script shell.
Bon, j'ai trouvé une solution grâce à :
-- Mac OS X Hints
-- Useful script examples for Safari
-- http://hints.macworld.com/article.php?story 100803094600903
Ça m'oblide à utiliser Safari, alors qu'Opera est mon navigateur par
défaut, pas très grave.
J'ai un JavaScript dans ma page qui écrit dans un <pre id='result' /> un
objet linéarisé par json :
document.getElementById('result').innerHTML = JSON.stringify(coordinates);
Je récupère l'objet linéarisé par AppleScript :
set jsCode to "document.getElementById('result').innerHTML;"
tell application "Safari"
set result to (do JavaScript jsCode in current tab of window 1)
return result
end tell
lequel script "SafariTabResult" est lu en CLI par :
$ osascript '/Users/yt/dev/AS/SafariTabContent/SafariTabResult.scpt'
et, pour finir, plutôt qu'au Terminal, je lance ce script par un autre
script Ruby cette fois-ci :
$ /Users/yt/Sites/Photos/GMaps/address_coordinates_read.rb
{"address":{"street":"55 Rue du Faubourg
Saint-Honoré","zipcode":75008,"city":"Paris","country":"France","latitude":"48.8706011","longitude":"2.3169533","elevation":"32.71"},"click":{"latitude":"48.8625691","longitude":"2.3218918","elevation":"26.90"}}
address :
street => 55 Rue du Faubourg Saint-Honoré
zipcode => 75008
city => Paris
country => France
latitude => 48.8706011
longitude => 2.3169533
elevation => 32.71
click :
latitude => 48.8625691
longitude => 2.3218918
elevation => 26.90
la récupération des données GPS me sert par ailleurs à ajouter ces
données sur dand l'EXIF de photos qui ont été prises sans info GPS.
je cherche un navigateur commandable en ligne de commande et permettant de retourner un résutat à un script shell.
Qu'est-ce que tu veux faire ?
comme je le disait, retourner un résultat de la page.
Je m'explique "mieux", j'ai une page de "géolocalisation inversée", dans un champ input j'entre une adresse du genre : 22 rue du Lapin qui fume, 75001 Paris, France et ça me donne latitude, longitude, élévation.
c'est ce que je voudrais lire dans un script shell.
Bon, j'ai trouvé une solution grâce à : -- Mac OS X Hints -- Useful script examples for Safari -- http://hints.macworld.com/article.php?story 100803094600903
Ça m'oblide à utiliser Safari, alors qu'Opera est mon navigateur par défaut, pas très grave.
J'ai un JavaScript dans ma page qui écrit dans un <pre id='result' /> un objet linéarisé par json : document.getElementById('result').innerHTML = JSON.stringify(coordinates);
Je récupère l'objet linéarisé par AppleScript : set jsCode to "document.getElementById('result').innerHTML;"
tell application "Safari" set result to (do JavaScript jsCode in current tab of window 1) return result end tell
lequel script "SafariTabResult" est lu en CLI par : $ osascript '/Users/yt/dev/AS/SafariTabContent/SafariTabResult.scpt'
et, pour finir, plutôt qu'au Terminal, je lance ce script par un autre script Ruby cette fois-ci : $ /Users/yt/Sites/Photos/GMaps/address_coordinates_read.rb {"address":{"street":"55 Rue du Faubourg Saint-Honoré","zipcode":75008,"city":"Paris","country":"France","latitude":"48.8706011","longitude":"2.3169533","elevation":"32.71"},"click":{"latitude":"48.8625691","longitude":"2.3218918","elevation":"26.90"}} address : street => 55 Rue du Faubourg Saint-Honoré zipcode => 75008 city => Paris country => France latitude => 48.8706011 longitude => 2.3169533 elevation => 32.71 click : latitude => 48.8625691 longitude => 2.3218918 elevation => 26.90
la récupération des données GPS me sert par ailleurs à ajouter ces données sur dand l'EXIF de photos qui ont été prises sans info GPS.
Une Bévue
Le 31/10/2015 08:21, Sergio a écrit :
Par exemple : Allumer ou éteindre les voyants d'une neufbox : -------
#!/bin/bash if zenity --title "Allumage LEDs Neufbox" --question --text "On allume les Leds ?"; then LEDS="on" else LEDS="off" fi wget --post-data="leds_state=$LEDS" http://192.168.1.1/state -O /dev/null
ah, c'est pas mal ça, on peut programmer fastoche une 9Box. j'aimerais bien, derrière une FreeBox faire des choses semblables, comme par exemple récupérer la marge de bruit et c.
Le 31/10/2015 08:21, Sergio a écrit :
Par exemple :
Allumer ou éteindre les voyants d'une neufbox :
-------
#!/bin/bash
if zenity --title "Allumage LEDs Neufbox" --question --text "On allume
les Leds ?"; then
LEDS="on"
else
LEDS="off"
fi
wget --post-data="leds_state=$LEDS" http://192.168.1.1/state -O /dev/null
ah, c'est pas mal ça, on peut programmer fastoche une 9Box.
j'aimerais bien, derrière une FreeBox faire des choses semblables, comme
par exemple récupérer la marge de bruit et c.
Par exemple : Allumer ou éteindre les voyants d'une neufbox : -------
#!/bin/bash if zenity --title "Allumage LEDs Neufbox" --question --text "On allume les Leds ?"; then LEDS="on" else LEDS="off" fi wget --post-data="leds_state=$LEDS" http://192.168.1.1/state -O /dev/null
ah, c'est pas mal ça, on peut programmer fastoche une 9Box. j'aimerais bien, derrière une FreeBox faire des choses semblables, comme par exemple récupérer la marge de bruit et c.