NEWS
gelöst Solarwatt Energymanager flex Daten auslesen
-
Hallo zusammen,
ich versuche den parser Adapter zu verwenden.
Ich habe ein russisches Video gefunden, aber leider komme ich damit nicht so ganz weiter.
Mein Vorhaben:
Ich möchte mehrere Werte aus einer Seite von meinem Energymanager flx lesen.Mein Vorgehen:
- Parser Adapter installiert:
- Homepage eingefügt
Wenn ich die Homepage einfüge (http://192.168.178.124/paperui/index.html#/control) wird der Basisquellcode der Seite im Parser Objekt angezeigt.
Wie finde ich nun aber das Element?
Wenn ich in Chrome das Element aussuche und auf "Untersuchen" klicke erscheint in den Chrome Entwicklertools unter Element ein Eintrag, der es sein sollte. Im Parser Objekt kann ich das aber nicht finden.Was mache ich da falsch?
-
@mcbirne
das Problem ist scheinbar, dass auf der Seite vieles als Javascript existiert und dort die einzenlen Bestandteile nicht aufgelöst werden.
das ist die Seite:<!DOCTYPE html> <html lang="en" ng-app="PaperUI"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> <title>Paper UI</title> <link rel="shortcut icon" href="img/logo.ico" /> <link type="text/css" href="css/bootstrap.min.css" rel="stylesheet"> <link type="text/css" href="css/angular-material.min.css" rel="stylesheet"> <link type="text/css" href="css/md-expansion-panel.min.css" rel="stylesheet"> <!-- custom css files --> <link type="text/css" href="css/components.css" rel="stylesheet"> <link type="text/css" href="css/layout.css" rel="stylesheet"> <link type="text/css" href="css/views.css" rel="stylesheet"> <link type="text/css" href="css/theme.css" rel="stylesheet"> <link type="text/css" href="css/parameterDescription.css" rel="stylesheet"> <link type="text/css" href="css/ol.css" rel="stylesheet"> <!-- Icons/Fonts --> <link type="text/css" href="css/roboto-fontface.css" rel="stylesheet" media="all"> <link type="text/css" href="css/material-icons.css" rel="stylesheet" media="all"> <meta name="apple-mobile-web-app-capable" content="yes" /> <noscript> <div class="jsDisabled">Sorry! PaperUI requires JavaScript to run. Please enable it in your browser.</div> <style> .jsEnabled { display: none; } </style> </noscript> </head> <body ng-controller="BodyController"> <div id="authentication" data-access-token="{{ACCESS_TOKEN}}"></div> <div ng-include="'partials/include.extension.html'"></div> <div ng-include="'partials/navigation.menu.html'"></div> <div class="jsEnabled" id="wrapper"> <header> <a href="#" class="open-menu">≡</a> <div class="title"> <h1 flex="60"> {{title}} <span ng-repeat="subtitle in subtitles" class="subtitle"> <span class="chevron material-icons">chevron_right</span> {{subtitle}} </span> </h1> </div> </header> <bgsound id="audioSink" loop="1"> <ng-view autoscroll="true"></ng-view> <footer> </footer> </div> <!-- lib js files --> <script src="js/jquery.min.js"></script> <script src="js/angular.min.js"></script> <script src="js/jquery-ui.min.js"></script> <script src="js/angular-bundle.min.js"></script> <script src="js/bootstrap.min.js"></script> <!-- TODO: Create custom variant to save space --> <script src="js/tinycolor.js"></script> <script src="js/masonry.pkgd.min.js"></script> <script src="js/sprintf.min.js"></script> <script src="js/eventsource.min.js"></script> <script src="js/ol-esh.js"></script> <!-- inject:js --> <script src="js/app.js"></script> <script src="js/constants.js"></script> <script src="js/services.min.js"></script> <script src="js/controllers.min.js"></script> <script src="js/extensions.js"></script> <script src="js/main.js"></script> <script src="js/shared.properties.js"></script> <!-- endinject --> <script src="js/widget.multiselect.js"></script> <script src="js/search.filters.js"></script> <script src="js/utility.js"></script> </body> </html>
und das erhalte ich, wenn ich den benötigten Werte in Chrome untersuche:
<span class="state ng-binding">970</span>
Die 970 ändern sich ständig. Diese zahl möchte ich haben.
-
Den benötigte wert sehe ich in den chrome entwicklertools nur in Elemente nicht im Quellcode. Ist das der Grund, warum es nicht funktioniert?
-
hat niemand eine Idee?
-
@mcbirne Steckt da openHAB dahiner? Ich frag wegen PaperUI?
-
@mcbirne sagte in HTML und Parser Adapter verwenden - Hilfe benötigt:
hat niemand eine Idee?
das hatten wir doch die Tage schon in deinem anderen Thread
-
Hallo zusammen, ich bin inzwischen einen großen Schritt weiter gekommen. der Energymanager flex von solarwatt setzt einen openHab ein. Ich habe die Struktur etwas analysiert und unter http://192.168.178.124/rest/items stehen alle Werte die auch in der PaperUI angezeigt werden. Nun muss man sie nur noch im Parser herausziehen. Das ist aber kein Problem mehr.
Danke für die Tipps und die Unterstützung.