NEWS
Skripten des E-Control Spritpreisrechners
-
@metaxa sagte in Skripten des E-Control Spritpreisrechners:
Wie gesagt, ich beschäftige mich mit programmieren und im Speziellen mit JS grad mal paar Stunden und heute
Da kannst du mehr als ich Natives js habe ich noch nie versucht - traue mir das einfach nicht zu.
Mit Blockly würde ich es angehen, da ist gestern der RegEx Block dazu gekommen, der das ganze ermöglichen müsste.Du kannst den URL doch auch in einem Browser eingeben und bekommst das json zurück.
Das geht definitiv über js.Wenn das mit wget ginge (??) würde eine Datei mit dem json angelegt, die wiederum mit dem Parser-Adapter zerlegt werden könnte.
Aber ich hätte gerne alles auf einem System, dann kann man mit den RegEx Schnipseln jonglieren und anschließend einen sinnvollen output generieren, der immer die gleiche Struktur (Datenpunkte) hat, egal in welcher Reihenfolge die Rohdaten im json vorliegen.
-
@Homoran sagte in Skripten des E-Control Spritpreisrechners:
Das geht definitiv über js.
Da bin ich mir sicher, nur ich hab keinen Tau davon. Die Syntax "$.getJSON()" ist für mich eine Ansammlung spanischer Dörfer. Wobei ich jetzt ehrlich gesagt, den Parser als geringstes Problem sehe. Eher - da sind wir uns ja einig - das sichere Auffinden "seiner" Tankstelle.
-
Gerade getestet, schaut gut aus!
-
@metaxa sagte in Skripten des E-Control Spritpreisrechners:
Servus Metaxa!Also, DP wurden ordnungsgemäß angelegt.
Befüllt wurden sie nach paarmaligem umstellen im Parser.Nur "Treffer 1" wird nicht befüllt.
Fehlermeldung bekomm ich auch wie du.
das sichere Auffinden "seiner" Tankstelle.
mir persönlich würde reichen, wenn ich einfach nur die 5 günstigsten rund um meinen Koordinaten bekomme.
-
@sigi234 Vergleichs mal bitte mit der e-control. Bei mir hats mehrfach gepaßt.
-
@metaxa sagte in Skripten des E-Control Spritpreisrechners:
Vergleichs mal bitte mit der e-control. Bei mir hats mehrfach gepaßt.
Bei mir passt alles zusammen!
Nur eben Nr. 1 geht ab.
-
@Negalein
drücke mal im Reiter "Objekte" F5.
Die Fehler verschwinden im Regelbetrieb, ich verstehe sie auch inhaltlich nicht wirklich. -
@metaxa sagte in Skripten des E-Control Spritpreisrechners:
drücke mal im Reiter "Objekte" F5.
Die Fehler verschwinden im Regelbetrieb, ich verstehe sie auch nicht wirklich.Bingo
hatte ich zuvor zwar auch schon mehrmals gemacht, aber zumindest ist jetzt alles da!DANKE
-
@Negalein & @sigi234
Dann kann ich jetzt mal aufhören zu Schwitzen und hab aktuell keine weiteren aktuellen ToDo aus dem ThemaWenn Pix auftauchen sollte, würde mich sehr über seine Hilfe freuen.
- Wie ich den JSON direkt ins Script krieg, die Syntax "$.getJSON()" ist für mich eine Ansammlung spanischer Dörfer.
- Wie ich diese Fehlermeldungen am Anfang wegbekomme oder eben verstehen und ändern kann
LG, mxa
-
SUPER, Preise mit E-Control sind gleich.
Alles passt jetzt zusammen, Log Fehler hatte ich keine. -
@metaxa sagte in Skripten des E-Control Spritpreisrechners:
Wenn Pix auftauchen sollte
Den sehe ich (hoffentlich) Samstag
Bei mir hängt es jetzt schon hier:
Ich weiß nicht wie ich jetzt an das Ergebnis komme zum weiterarbeiten.
Vielleicht hilft dir das:
schedule("* * * * *", function () { try { require("request")('https://api.e-control.at/sprit/1.0/search/gas-stations/by-address?latitude=48.514398&longitude=13.470133&fuelType=DIE&includeClosed=false').on("error", function (e) {console.error(e);}); } catch (e) { console.error(e); } });
-
@metaxa sagte in Skripten des E-Control Spritpreisrechners:
Dann kann ich jetzt mal aufhören zu Schwitzen und hab aktuell keine weiteren aktuellen ToDo aus dem Thema
Ja, das sei dir gegönnt!
-
@metaxa
Der Grundstein ist gelegt: -
@Homoran sagte in Skripten des E-Control Spritpreisrechners:
@metaxa
Der Grundstein ist gelegt:Ösi-Tanken
-
Hallo,
ja, das ist der richtige Weg. Dann braucht es auch keinen Parser-Adapter, das kann ein Skript ganz gut.
Mir fehlt gerade etwas die Zeit, um es komplett vorzukauen. Bin noch mit dem Pollenflug beschäftigt und dann gehts ja schon fast nach KS. Ich werde es mir im Zug nochmal ansehen. Dort kann ich aber nur grob was zusammenschreiben, da ich da nicht testen kann (hab noch keinen mobilen iobroker-Master).
Hilft euch denn nicht das Spritpreis Skript, das dem tankerkoenig-Adapter damals vorausging? Da läuft doch das Parsen einer JSON auch erfolgreich.
https://forum.iobroker.net/post/1012Gruß
Pix -
-
@metaxa
Mal ganz grob gedachtWas hältst du von einem array.
Wird beim allerersten Durchlauf angelegt mit allen daten der 10 tanken
Da kannst du dann bei jedem weiteren Durchlauf nur die preise im array austauschen oder gegen >xx wenn nicht unter den top5 -
So, mein grober Entwurf ist mal fertig.
Gefällt mir noch nicht perfekt, aber zumindest sieht man auf den 1. Blick alles nötige!Danke nochmals
-
Hübsch, wirklich gelungen!
Bin gerade am Erweitern um Entfernung und ob zum Zeitpunkt der letzten Abfrage - offen oder zu.
Gerne und LG, mxa
-
@Homoran
Hallo Rainer! Ja array, an dem geht eh kein Weg vorbei. Nur, ich darfs nicht laut schreiben, ich habe keinen blassen Schimmer davon.
Hab es gestern Abend noch geschafft, mit dem Hinweis von PIX, die URL direkt ins Script (also ohne Parser) zu laden. Nur bei der Schleifenabfrage der einzelnen Werte hagelt es Beschwerden seitens JS im Log. Da bin ich noch sehr hilfsbedürftig
Auch habe ich mir gestern Nacht noch angesehen wie denn das ist, wenn man auch geschlossene Tankstellen anzeigen läßt. Naja, ausbaufähig, bei einigen sieht man einen Preis, bei anderen wieder nicht.
Die Endausbaustufe sehe ich in meinem Script:-
kein Parser notwendig
-
nur das Script mit folgenden Parametern zum Einstellen:
-
Längengrad & Breitengrad
-
Diesel/ Benzin
-
nur offene / auch geschlossene
-
Nur brauche ich halt leider Hilfe, mit lesen alleine komme ich nicht mehr weiter, bzw. ist es auf die Dauer sehr zeitraubend.
LG, mxa
-