Die Jungs von mehr-tanken.de
Wieso "Jungs" - kennst Du die?
Anmeldungsdatum: Beiträge: 17552 Wohnort: Berlin |
|||||
Anmeldungsdatum: Beiträge: 7174 Wohnort: Wolfen (S-A) |
Blödsinn ! - die Jungs von der Tanke sind auch nicht so unendlich schlau, und was man auf dem Schirm sehen kann, das kann man auch an 'nen OCR verfüttern. LG, track |
||||
Anmeldungsdatum: Beiträge: 7174 Wohnort: Wolfen (S-A) |
Ich muss schon sagen, als Proof-of-Concept für eine OCR-Auswertung ist diese Seite überaus reizvoll ! - das funktioniert nämlich tatsächlich, mit dem Trainieren von gocr, und dem Auswerten der Bildchen ... Aber es gibt einen viel bequemeren Weg, die aktuellen Benzinpreise zu recherchieren, die Seite des Bundesanzeigers: http://www.spritpreismonitor.de/suche/?tx_spritpreismonitor_pi1[searchRequest][plzOrtGeo]=06766&tx_spritpreismonitor_pi1[searchRequest][umkreis]=5&tx_spritpreismonitor_pi1[searchRequest][kraftstoffart]=e10&tx_spritpreismonitor_pi1[searchRequest][tankstellenbetreiber]= (Man nehme bitte den gesamten Link. Die Forensoftware zerruppt den leider !) Dort stehen alle Daten in Klartext, und eine Behörde ist mir als Datenlieferant sowieso lieber. Den Hinweis fand ich im Wiki "Markttransparenzstelle für Kraftstoffe". - p.s.: hier habe ich mal einen Filter dazu gebastelt, der den Preis protokolliert: hxnormalize "http://www.spritpreismonitor.de/suche/?tx_spritpreismonitor_pi1[searchRequest][plzOrtGeo]=Bobbau&tx_spritpreismonitor_pi1[searchRequest][umkreis]=2&tx_spritpreismonitor_pi1[searchRequest][kraftstoffart]=diesel&tx_spritpreismonitor_pi1[searchRequest][tankstellenbetreiber]=" | \ sed '/var spmResult/!d; s/[^:]*//; s/{/\n/g' | sed 's/"[,:]"/\t/g; s/.*name\t//; s/ .*datum//; s/\tent.*//' >> benzinpreis.log in diesem Format: track@lucid:~$ hxnormalize "http://www.spritpreismonitor.de/suche/?tx_spritpreismonitor_pi1[searchRequest][plzOrtGeo]=Bobbau&tx_spritpreismonitor_pi1[searchRequest][umkreis]=2&tx_spritpreismonitor_pi1[searchRequest][kraftstoffart]=diesel&tx_spritpreismonitor_pi1[searchRequest][tankstellenbetreiber]=" 2> /dev/null | sed '/var spmResult/!d; s/[^:]*//; s/{/\n/g' | sed 's/"[,:]"/\t/g; s/.*name\t//; s/ .*datum//; s/\tent.*//' GO 2013-09-24 15:09:02 diesel 1.399 SB 2013-09-24 14:43:19 diesel 1.379 Aral 2013-09-24 15:37:10 diesel 1.399 LG, track |
||||
Anmeldungsdatum: Beiträge: 920 |
Sehr gutes Skript! Danke für die Arbeit. Kleines Manko: Der Name von den Tankstellen wird oft nicht richtig erfasst. Beispiel:
führt zu
|
||||
Anmeldungsdatum: Beiträge: 7174 Wohnort: Wolfen (S-A) |
Das liegt in Deinem Fall allerdings daran, dass z.B. Shell unter "name": wirklich nur "COBURG, KANONENWEG." schreibt, und nix von "Shell" ! Du könntest alternativ natürlich das Feld "marke": anzeigen lassen (das ist der fett gedruckte Text auf der Internetseite), dann würde es in Deinem Fall wohl besser passen. Damit ändern sich lediglich im 2. sed- Filter die Schnittmarken etwas: hxnormalize "http://www.spritpreismonitor.de/suche/?tx_spritpreismonitor_pi1[searchRequest][plzOrtGeo]=96450&tx_spritpreismonitor_pi1[searchRequest][umkreis]=2&tx_spritpreismonitor_pi1[searchRequest][kraftstoffart]=diesel&tx_spritpreismonitor_pi1[searchRequest][tankstellenbetreiber]=" | \ sed '/var spmResult/!d; s/[^:]*//; s/{/\n/g' | sed 's/"[,:]"/\t/g; s/.*marke\t//; s/\tlaen.*datum//; s/\tent.*//' >> benzinpreis.log Das ist allerdings bei uns in der Gegend Unsinn, weil eine Freie Tankstelle so 'nen kettenlangen "Markennamen" in diesem Feld stehen hat ... 😉 LG, track p.s.: Dazu habe ich mir auch noch einen "Starter" gebaut, der in einem zenity- Fenster den aktuellen Preis aus dem benzinpreis.log anzeigt. sh -c 'zenity --info --title=Benzinpreis --text="$(awk "{ FS=\"\t\"; if(\$3==\"diesel\"&&s==\"e10\") t=\"\"; t=t \$0 \"\n\"; s=\$3} END{ printf t}" benzinpreis.log | sort -k4 -k5 -k3 | sed "s/e10/&\t/; s/9$/⁹/")"' Die Formatierung muss man natürlich noch ggf. etwas anpassen, besonders bei den TABs für die Spalten ... |