NEWS
Hilfe beim auslesen einer Webseite benötigt
-
Hallo Homoran,
der Seitenquelltext sieht so aus:
-
@skiworker Diesen Wert wirst Du so nicht auslesen könnnen. Sobald da $0 drin steht, wird der Wert serverseitig zur Verfügung gestellt und ist nicht Bestandteil der HTML Seite.
-
habe ich dann generell kein Möglichkeit an diesen Wert zukommen?
Oder gibt es eine andere Option ? -
@skiworker sagte in Hilfe beim auslesen einer Webseite benötigt:
habe ich dann generell kein Möglichkeit an diesen Wert zukommen?
Oder gibt es eine andere Option ?Wenn es keine API gibt - wirst Du da nicht rankommen. Du siehst ja, dass der Wert nicht Bestandteil der Webseite ist. Deswegen bekommst Du auch nichts raus.
-
@skiworker sagte in Hilfe beim auslesen einer Webseite benötigt:
Oder gibt es eine andere Option ?
Du könntest mit den Entwickler Werkzeugen in der console oder in network versuchen herauszufinden wo die Seite den Wert herholt.
mit ganz viel Glück ist da ein javascript oder eine Quelle zu sehen.
Müsste michvda auch erst wieder einarbeiten -
Die Daten werden natürlich schon irgendwie geladen. So wie hier schon gesagt,, kannst du mit den Web Developer Tools beispielsweise von Chrome, Firefox oder Edge danach schauen.
Die Web Developer Tools kannst du im Browser mit F12 öffnen
Dort gibt es einen Reiter mit Netzwerk.
Wenn die Seite schon geladen war, musst du noch mal fünf drücken, um die Seite neu zu laden.
Dann erscheinen in diese Reiter alle einzelnen requests, die durchgeführt werden.
Die schaust du dir alle Einzel an.
CSS Dateien, Bilder, kannst du auslassen.
Wenn du Glück hast und die Daten nicht verschlüsselt sind (was meist nicht der Fall ist) findest du die Daten.
Wenn du Glück hast, liegen die Daten sogar als JSON oder XML vor.Aber bei so einer altbackene Technologie (da versucht tatsächlich jemand noch Active X Objekte zu laden, obwohl die wirklich schön von Microsoft deaktiviert wurden) dürfte es wahrscheinlich gar nicht so schwer sein.
-
also ich habe die geladenen Seiten und und Scripte durchsucht, aber nicht gefunden, was auf PowerValue hindeutet.
Ich glaube (auch wenn es mich wahnsinnig interessiert), der Aufwand für diesen einen Wert, ist es nicht Wert. Ich werde wohl eine Shelly Steckdose vorschalten. Dort kann ich dann die Leistung der Aquarium-LED-Leuchte mit einfachen Mitteln in Iobroker bringen.Was meint Ihr?
Hier noch eine Übersicht der geladenen Inhalte (F12 und F5)
-
Dann kannst du mal noch auf controler (mit einem l?) klicken
Im rechten Bereich gibt es noch einen subtab mit messages.Da wird wohl per websocket kommuniziert. Da tauscht Server und Client über ein kontinuierliche Verbindung Daten per message packets aus.
In dem Message tab sind diese messages dann aufgelistet. -
@oliverio
ich habe unter Message zwar keine Refresh Power gefunden, aber ein Refresh Temp.
siehe hier:
wie würde ich denn jetzt hier weiter machen müssen?
-
Das könnte leider etwas aufwändiger sein. Da du das komplette Kommunikation throwback Moral nachbilden musst.
Wenn du Glück hast, ist es einfach nur die Verbindung aufbauen und eine Anfrage stellen, die dann die entsprechenden Daten zurück liefert. Dazu muss man die einzelnen Messages analysieren und hoffen, dass es nicht zu kryptisch ist.
https://flowfuse.com/node-red/core-nodes/websocket/
Für weitere Details müsste ich dich mal ein @mickym verweisen, der kennt sich mit Node red wesentlich besser aus.Eine weitere Alternative wäre noch der puppeteer Adapter. Der ist allerdings etwas Ressourcen intensiv, da im Hintergrund ein kompletter Browser geladen wird, die Seite abgerufen wird und dann, wenn die Daten da sind, kann man über CSS Selector auf die Daten in der HTML Seite zugreifen.