Hauptmenü

BenzinpreisMonitor

Begonnen von Phil__, 16 April 2014, 18:52:21

Vorheriges Thema - Nächstes Thema

raspklaus

Hallo,

ich benutze:

define Benzinpreis HTTPMOD http://www.clever-tanken.de/tankstelle_details/2634 60
attr Benzinpreis readingsName_Diesel Diesel
attr Benzinpreis readingsRegex_Diesel <div class="fuel_type">Diesel[^0-9]+([0-9\.]+)
attr Benzinpreis room Benzinpreis
attr Benzinpreis timeout 5


in den Readings steht dann :

Diesel                  1.32                2014-07-18 11:06:20
SuperE10                1.51               2014-07-18 10:44:50
SuperE5                  1.55           2014-07-18 10:44:50


Nun meine Fragen:

Ich frage ja eigentlich nur Diesel ab. Warum kommen auch die anderen Preise ?

Im Webinterface zeigt Benzinpreis nur ??? an. Wie bekomme ich den Preis angezeigt ?

raspklaus

ok habs gefunden

attr Benzinpreis stateFormat {sprintf(ReadingsVal($name,"Diesel",0))}

aber nun kann fhem nicht mehr auf die Seite zugreifen


frank

Zitatattr Benzinpreis stateFormat {sprintf(ReadingsVal($name,"Diesel",0))}
nicht so kompliziert.

attr Benzinpreis stateFormat mein_diesel: Diesel

ZitatIch frage ja eigentlich nur Diesel ab. Warum kommen auch die anderen Preise ?
sind wohl noch von der ersten definition übriggeblieben.

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

raspklaus

ok

aber jetzt kann fhem auf clever-tanken nicht mehr zugreifen.

Internals:
   CHANGED
   DEF        http://www.clever-tanken.de/tankstelle_details/2634 60
   Interval   60
   NAME       Benzinpreis
   NR         32
   STATE      1.32
   TYPE       HTTPMOD
   addr       http://www.clever-tanken.de:80
   buf        HTTP/1.1 403 FORBIDDEN

Date: Fri, 18 Jul 2014 11:03:37 GMT

Server: Apache/2.2.22 (Ubuntu)

Vary: Accept-Encoding

Content-Type: text/html

Via: 1.0 www.clever-tanken.de

Content-Length: 1006

Connection: close




<!DOCTYPE html>
<html lang="en">
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <meta name="robots" content="NONE,NOARCHIVE">
  <title>403 Forbidden</title>
  <style type="text/css">
    html * { padding:0; margin:0; }
    body * { padding:10px 20px; }
    body * * { padding:0; }
    body { font:small sans-serif; background:#eee; }
    body>div { border-bottom:1px solid #ddd; }
    h1 { font-weight:normal; margin-bottom:.4em; }
    h1 span { font-size:60%; color:#666; font-weight:normal; }
    #info { background:#f6f6f6; }
    #info ul { margin: 0.5em 4em; }
    #info p, #summary p { padding-top:10px; }
    #summary { background: #ffc; }
    #explanation { background:#eee; border-bottom: 0px none; }
  </style>
</head>
<body>
<div id="summary">
  <h1>Forbidden <span>(403)</span></h1>
  <p>CSRF verification failed. Request aborted.</p>

</div>

<div id="explanation">
  <p><small>More information is available with DEBUG=True.</small></p>
</div>

</body>
</html>

   code       403
   conn
   data       1
   displayurl http://www.clever-tanken.de/tankstelle_details/2634
   host       www.clever-tanken.de
   loglevel   4
   path       /tankstelle_details/2634
   protocol   http
   redirects  0
   timeout    2
   url        http://www.clever-tanken.de/tankstelle_details/2634
   Readings:
     2014-07-18 11:18:21   Diesel          1.32
     2014-07-18 10:44:50   SuperE10        1.51
     2014-07-18 10:44:50   SuperE5         1.55
Attributes:
   readingsName_Diesel Diesel
   readingsRegex_Diesel <div class="fuel_type">Diesel[^0-9]+([0-9\.]+)
   requestData.* 1
   room       Benzinpreis
   stateFormat {sprintf(ReadingsVal($name,"Diesel",0))}

Rince

Hm,
vielleicht mag clever tanken nicht automatisiert aufgerufen werden? Also oft hintereinander?

Ruf es mal von deinem PC aus auf.
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

raspklaus

Vom PC aus lässt sich die Seite einwandfrei laden auch von einem anderen System mit wget. Es muss also an HTTPMOD liegen

frank

in deinem list ist immer noch dein attribut

stateFormat {sprintf(ReadingsVal($name,"Diesel",0))}

eingetragen.

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

raspklaus

Ja, das mit dem Attribut stimmt, aber nun wird ja die Webseite nicht mehr gelesen und das ist ein ganz anderes Problem.
Ich glaube ich mach mal einen neuen Thread in Module auf

salvadore

@raspklaus

bei mir funktioniert der folgende Code:

define Benzinpreis HTTPMOD http://www.clever-tanken.de/tankstelle_details/13320 60
attr Benzinpreis group Treibstoff
attr Benzinpreis readingsName_SuperE5 SuperE5
attr Benzinpreis readingsRegex_SuperE5 <div class="fuel_type">Super E5[^0-9]+([0-9\.]+)
attr Benzinpreis room Benzinpreis
attr Benzinpreis stateFormat Liter_Benzin: SuperE5
attr Benzinpreis timeout 5


define Dieselpreis HTTPMOD http://www.clever-tanken.de/tankstelle_details/13320 60
attr Dieselpreis group Treibstoff
attr Dieselpreis readingsName_Diesel Diesel
attr Dieselpreis readingsRegex_Diesel <div class="fuel_type">Diesel[^0-9]+([0-9\.]+)
attr Dieselpreis room Benzinpreis
attr Dieselpreis stateFormat Liter_Diesel: Diesel
attr Dieselpreis timeout 5


zuvor hatte ich noch das überflüssige Reading aus der ersten cfg  gelöscht.

sehe gerade, dass ich günstig tanken kann.

gruss
salvadore
FHEM 5.6, APU-Board, CUNO 1.x, RFXtrx433, 8 FHT80B, diverse FS20 Aktoren, Rasperry, div. DS18x-Sensoren, KD101, AB400R, HE877, ESA2000, Beaglebone Black Rev.C, Jeelink, PCA 301, PT8005,

Puschel74

Hallo,

grad mal definiert bei mir - klappt wunderbar.
Danke.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

raspklaus

Bei mir gings ja auch ne zeit lang aber danach war dann schluss

Puschel74

Hallo,

dann warten wir mal.

Ich hab den Abfragezyklus auf 1800 Sekunden (ich hoffe das es Sekunden sind - ich hab noch nicht in die commandref geschaut  8) ) gestellt.
Der Spritpreis wird sich ja hoffentlich nicht im Minutentakt ändern - wobei, bei denen weiß man ja nie  ::)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

salvadore

@puschel
sind Sekunden. Habe vorsichtshalber auch mal den Intervall hochgesetzt.
Mal sehen, ob ich den Preis noch unterschiedlich einfärben kann, z.B. bei Diesel <= 1.32 gelb einfärben und > z.B. rot.

Salvadore
FHEM 5.6, APU-Board, CUNO 1.x, RFXtrx433, 8 FHT80B, diverse FS20 Aktoren, Rasperry, div. DS18x-Sensoren, KD101, AB400R, HE877, ESA2000, Beaglebone Black Rev.C, Jeelink, PCA 301, PT8005,

Puschel74

#28
Hallo,

ZitatMal sehen, ob ich den Preis noch unterschiedlich einfärben kann, z.B. bei Diesel <= 1.32 gelb einfärben und > z.B. rot.
Sollte mit stateFormat klappen. Blödsinn
Aber wird der dann jemals gelb  8)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Rince

Jetzt noch eine passende Logfiledefinition und ein gplot für:
Täglich
Wöchentlich
Monatlich (mit gemittelten Tageswerten)

Dann wissen wir, wann es wirklich günstig ist zu tanken ;)
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)