[Gelöst] Spritpreise und www.clever-tanken.de

Begonnen von UweUwe, 19 Dezember 2018, 11:14:39

Vorheriges Thema - Nächstes Thema

Jamo

Danke, das habe ich jetzt gerade auch gesehen. Ich habe auch ein zusätzlichen Monitor, den ich nach Vorgabe von Matze aus Antwort #1 in diesem Thread eingerichtet habe,
wenn ich die Änderungen so mache, wie in https://forum.fhem.de/index.php/topic,99939.msg933292.html#msg933292 vorgeschlagen,
bekomme ichtrotzdem keine Readings :-(
Der link und meine RegEx wie bei Matze aus Antwort #1

https://www.clever-tanken.de/tankstelle_liste?spritsorte=7&r=10&lat=47.875943&lon=10.550710 1200

attr $device reading01Name Tankstellenname ;
                attr $device reading01Regex <div class=\"row fuel-station-location-name\">(.*)<\\/div> ;
                attr $device reading01RegOpt g ;
                attr $device reading02Name Preis ;
                attr $device reading02Regex <div class=\"price\">(.*)<sup> ;
                attr $device reading02RegOpt g ;
                attr $device reading03Name Strasse ;
                attr $device reading03Regex <div id=\"fuel-station-location-street\">(.*)<\\/div> ;
                attr $device reading03RegOpt g ;
                attr $device reading04Name Ort ;
                attr $device reading04Regex <div id=\"fuel-station-location-city\"> (.*)<\\/div> ;       
                attr $device reading04RegOpt g ;
                attr $device reading05Name Entfernung ;
                attr $device reading05Regex <div >(.*)<\\/div> ;
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

yersinia

Clever Tanken hat seine Webseite umgestellt, versuche mal folgendes (ohne Gewähr):
attr $device reading01Regex <span class=\"fuel-station-location-name\">(.*)<\\/span> ;
attr $device reading02Regex <div class=\"price-text price text-color-ct-blue\">(?>\s*)(\d.*)<sup> ;
attr $device reading03Regex <div class=\"fuel-station-location-street\">(.*)<\\/div> ;
attr $device reading04Regex <div class=\"fuel-station-location-city\"> (.*)<\\/div> ;
attr $device reading05Regex <span class=\"fuel-station-location-distance d-flex justify-content-end\">(?>\s*)<span>(\d.\d) ;

(getestet mit https://regex101.com/)
viele Grüße, yersinia
----
FHEM 6.4 (SVN) on RPi 4B with RasPi OS Bookworm (perl 5.36.0) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Jamo

Danke Danke, Preis und Distanz gehen schon wieder, aber fuel-station-location-name, fuel-station-location-street, und fuel-station-location-city liefern noch keine Readings. Wie kann ich das debuggen?
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

yersinia

#48
Debuggen geht indem du deinen clever-tanken Link öffnest, Quelltext anzeigen lässt und diesen dann in das Textfeld auf https://regex101.com kopierst. Das RegEx kommt in die Eingabezeile ganz oben und rechts siehst du das Ergebnis.

Allerdings bekomme ich Werte für

  • fuel-station-location-name mit <span class="fuel-station-location-name">(.*)<\/span>
  • fuel-station-location-street mit <div class="fuel-station-location-street">(.*)<\/div>
  • fuel-station-location-city mit <div class="fuel-station-location-city">(.*)<\/div>
geliefert.
viele Grüße, yersinia
----
FHEM 6.4 (SVN) on RPi 4B with RasPi OS Bookworm (perl 5.36.0) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Jamo

DANKE, jetzt gehts, Du hast mich in die richtige Richtung geschubst!
Mein Beitrag in Antwort#18 habe ich dann auch gleich korrigiert!
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Otto123

Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Jamo

#51
Aus dem Post von yersinia Antwort #46:
ZitatClever Tanken hat seine Webseite umgestellt, versuche mal folgendes (ohne Gewähr):
Code: [Auswählen]
attr $device reading01Regex <span class=\"fuel-station-location-name\">(.*)<\\/span> ;
attr $device reading02Regex <div class=\"price-text price text-color-ct-blue\">(?>\s*)(\d.*)<sup> ;
attr $device reading03Regex <div class=\"fuel-station-location-street\">(.*)<\\/div> ;
attr $device reading04Regex <div class=\"fuel-station-location-city\"> (.*)<\\/div> ;
attr $device reading05Regex <span class=\"fuel-station-location-distance d-flex justify-content-end\">(?>\s*)<span>(\d.\d) ;
(getestet mit https://regex101.com/)

Clever Tanken hat seine Webseite schon wieder umgestellt, das letzte Regex muss jetzt wie folgt geändert werden, also 'span' -> 'div':
attr $device reading05Regex <div class=\"fuel-station-location-distance d-flex justify-content-end\">(?>\s*)<span>(\d.\d) ;
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

thgorjup

Ich verwende jetzt mehr-tanken.de. Hier am Beispiel mit "63150+Heusenstamm". Müsst ihr natürlich ändern.


define AGIPBenzinpreis HTTPMOD https://mehr-tanken.de/tankstellen?searchText=63150+Heusenstamm&brand=1&fuel=2 3600
attr AGIPBenzinpreis userattr readingsName_SuperE5 readingsRegex_SuperE5
attr AGIPBenzinpreis readingsName_SuperE5 SuperE5
attr AGIPBenzinpreis readingsRegex_SuperE5 <span class="PriceList__itemPrice h1">[^0-9]+([0-9\.]+)
attr AGIPBenzinpreis room 10_Draußen
attr AGIPBenzinpreis stateFormat Preis: SuperE5 €
FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy

Otto123

Die Variante von hier funktioniert nach wie vor  :D
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Jamo

Ja, ich habe aber einen Monitor nach Vorgabe von Matze aus Antwort #1 in diesem Thread eingerichtet, der andere RegEx.
Ich benutze Lat/Lon um mir die Spritpreise in Abhängigkeit von meiner Parkposition anzuzeigen.
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence