Text Parser YelloStromzähler

Hallo

folgendes Problem:

  1. Ich habe einen WWW Reader angelegt der den Verbrauch aus meinen Yello Strom Zähler auslest.

  2. Ein Text Parser angelegt.

  3. Ein String Variable mit HTML Box

Aber irgendwie bekomme Ich keine Daten … bzw. es kommen irgendwelche daten an aber die Verbindung zum WebFront wird unterbrochen.

 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
    <head> 
        <meta http-equiv="refresh" content="2; URL=/index.html"> 
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
        <link href="/style/main-yello.css" rel="stylesheet" type="text/css" media="all"> 
 
        <title>Aktuelle Leistungsabnahme</title> 
    </head> 
    <body> 
        <div id="menu"> 
            <div id="logo"> 
                <img src="/images/logo-yello.gif"> 
 
            </div> 
            <div id="navigation"> 
                <div id="menuitems"> 
                    <ul> 
                        <li class="active"> 
                            <a class="link" href="/index.html">Aktuelle Leistung</a> 
                        </li> 
                        <li> 
                            <a class="link" href="/status.html">Statusseite</a> 
                        </li> 
                        <p> 
                        </p> 
                        <li><a class="link" href="https://192.168.178.35/index.html">Supportlogin</a></li> 
<li><a class="link" href="https://192.168.178.35/installateur/index.html">Installateurslogin</a></li> 
 
                    </ul> 
                </div> 
            </div> 
        </div> 
        <div id="main"> 
            <div id="meta"> 
                <div class="hotline"> 
                    <img src="/images/hotline-yello.gif"> 
 
                </div> 
            </div> 
            <div id="top"> 
                <div id="main_content"> 
                    <h1>Ihr Strom im Sekundentakt</h1> 
                    <div class="box small"> 
                        <div class="top_small"> 
                        </div> 
                        <div class="center_small"> 
                            <h2>Aktuelle Leistung</h2> 
                            <div class="akt_leistung">562 W</div> 
 
                        </div> 
                        <div class="bottom_small"> 
                        </div> 
                    </div> 
                    <div class="box small last"> 
                        <div class="top_small"> 
                        </div> 
                        <div class="center_small"> 
                            <h2>Durchschnittliche Leistung innerhalb der letzten Viertelstunde </h2> 
                            <div class="durch_leistung"> 
                                593 W
                            </div> 
                        </div> 
                        <div class="bottom_small"> 
                        </div> 
                    </div> 
                </div> 
            </div> 
        </div> 
    </body> 
</html> 

warum holst Du dir die Seite nicht mit file oder file_get_contents rein und ziehst dir dann die Daten die Du haben willst raus.

$lines = file("Adresse einfügen");
print_r($lines);

Hallo

nicht ganz verstanden …
:confused:

Die Seite die Du oben gepostet hast, hat eine Adresse, trag die doch mal in den Code ein und führ das Script mal aus.

$lines = file(„192.168.178.35“);
print_r($lines);

so wie Du sie im Browser auch aufrufst. http/https://…

OK

ich führe das Script aus:

$lines = file(„http://192.168.178.35/index.html“);
print_r($lines);

es tut sich nichts ??

was steht denn in der Script Ausgabe.

Array
(
    [0] => 

    [1] => 

    [2] => 

    [3] => 

    [4] =>     

    [5] =>         

    [6] =>         

    [7] =>         

    [8] => 

    [9] =>         Aktuelle Leistungsabnahme

    [10] =>     

    [11] =>     

    [12] =>         

    [13] =>             

    [14] =>                 

    [15] => 

    [16] =>             

    [17] =>             

    [18] =>                 

    [19] =>                     

    [20] =>                         

    [21] =>                             Aktuelle Leistung

    [22] =>                         

    [23] =>                         

    [24] =>                             Statusseite

    [25] =>                         

    [26] =>                         

    [27] =>                         

    [28] =>                         Supportlogin

    [29] => Installateurslogin

    [30] => 

    [31] =>                     

    [32] =>                 

    [33] =>             

    [34] =>         

    [35] =>         

    [36] =>             

    [37] =>                 

    [38] =>                     

    [39] => 

    [40] =>                 

    [41] =>             

    [42] =>             

    [43] =>                 

    [44] =>                     Ihr Strom im Sekundentakt

    [45] =>                     

    [46] =>                         

    [47] =>                         

    [48] =>                         

    [49] =>                             Aktuelle Leistung

    [50] =>                             614 W

    [51] => 

    [52] =>                         

    [53] =>                         

    [54] =>                         

    [55] =>                     

    [56] =>                     

    [57] =>                         

    [58] =>                         

    [59] =>                         

    [60] =>                             Durchschnittliche Leistung innerhalb der letzten Viertelstunde 

    [61] =>                             

    [62] =>                                 706 W

    [63] =>                             

    [64] =>                         

    [65] =>                         

    [66] =>                         

    [67] =>                     

    [68] =>                 

    [69] =>             

    [70] =>         

    [71] =>     

    [72] => 

)

das sind doch deine Daten die Du wolltest oder nicht. mach mal html filtern aus dann sieht man auch was noch alles da steht. Dann kannst Du mit

echo $lines[50];

mal schauen was drinnen steht.

Danke !!

jetzt muß Ich es nur noch schön darstellen hast du ein Tipp dazu.
:slight_smile:

Wie kann Ich eine Passwortgeschütze Seite parsen (wie Yellostrom)

jetzt muß Ich es nur noch schön darstellen hast du ein Tipp dazu.

was stellst Du dir denn vor. Reicht nicht einfach eine Variable im Webfront. Das wirst ja noch alleine hinbekommen. :slight_smile:

Wie kann Ich eine Passwortgeschütze Seite parsen

Das kommt auf die Seite drauf an wie der Login gehandelt wird.

Hab es mit einem ganz einfachen Parser gemacht, auf Seite 1 des Threads siehts so kompliziert aus!

Einfach einen Parser mit folgenden Parametern (auch auf die Leerzeichen achten) (siehe Bild) und in eine Integer-Variable mit DB geschoben, sieht das so aus (2. Bild)

Dann noch alle 10 Sec abrufen (so hab ichs im Moment) und es gibt ne schöne Kurve.

Wichtig fürs Nachmachen: Der Textparser bezieht sich ja auf einen WWW-Reader, bei dem muss nicht nur die IP (also http://xxx.xxx.xxx) angegeben werden, sondern immer mit /index.html , sonst kommt nur der Quelltext des Frames, welcher die Seite alle paar Sekunden neu lädt und kein Ergebnis :wink:

BildStrom2.png

Ich glaube alle 10sec war etwas viel für den Zähler, jetzt hat sich der Webserver vom Zähler aufgehängt. In einem KNX-Forum berichtet jemand vom selben Problem, hat hier auch wer sowas erlebt?

Hat jemand auch die Zählerstände ausgelesen. Nachdem Google-Powermeter ja jetzt nicht mehr läuft muss ich den mist ja leider selber machen und um den Tagesverbrauch zu haben muss ich wohl die Zählerstände haben. Nur ich weiss nicht so recht wie?!??!

Hallo,

ich hätte gerne mit

$lines = file(„http://192.168.0.100“);
print_r($lines);
meinen Schüco Wechselrichter ausgelesen, da das parsen per WWW Reader nicht klappt (es stehen nur Variablennamen im Quelltext).

Als Ausgabe gibt’s jedoch nur binären Kauderwelsch:

Array
(
[0] => ‹ïáìM
usw.

Hat jemand eine Idee?