Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Parser Wert auslesen aber wie?

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Parser Wert auslesen aber wie?

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @G.Hawk last edited by

      @g-hawk Na wenn Du Dich anmelden musst, hast Du im Browser auch mal Deine Anmeldedaten eingegeben.

      Du kannst ja mal versuchen hier deine Anmeldedaten einzugeben:

      31230684-4423-4f25-a99d-a96275ede522-image.png

      Zeig mal den Screenshot was aus DEinem Debug Fenster rauskommt?
      08a3763a-ed0e-423e-9172-3d887ed91751-image.png

      Einfach den Tab mit der Wanze öffnen und schauen was da drin steht.

      G 1 Reply Last reply Reply Quote 0
      • G
        G.Hawk @mickym last edited by

        @mickym

        Unbenannt.PNG

        Das gleiche wie bei Blockly

        mickym 1 Reply Last reply Reply Quote 0
        • mickym
          mickym Most Active @G.Hawk last edited by

          @g-hawk Ja gut - dann hat das weder mit Blockly noch mit NodeRed was zu tun - da ist was beim Aufruf faul. Gibts irgendeine Doku, du mir verlinken kannst?

          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @mickym last edited by mickym

            Du könntest noch versuchen folgenden Header zu nutzen:

            9115e6ee-1e06-49b9-8f52-2a0c772a0ca5-image.png

            in der HTTP- Request Node.

            G 1 Reply Last reply Reply Quote 0
            • G
              G.Hawk @mickym last edited by

              @mickym
              geht leider auch nicht

              Das war der Anfang:
              https://forum.iobroker.net/topic/57079/ewe-elmo-smartmeter-wifi-einbinden

              1 Reply Last reply Reply Quote 0
              • mickym
                mickym Most Active last edited by mickym

                @g-hawk Kannst Du wenn Du im Browser das Aufrufs - mal das Entwicklerfenster anschauen, ob da bestimmte Header gesetzt werden. Vielleicht verbietet die App auch ein direktes aufrufen. Mach mal ein Browserfenster auf - ruf die Daten ab und drücke F12.

                Das Problem liegt am Aufruf - da kann kein Tool was mit anfangen und auch kein Adapter wenn man nicht weiß, warum das so nicht abrufbar ist.

                G 1 Reply Last reply Reply Quote 0
                • G
                  G.Hawk @mickym last edited by

                  @mickym

                  Unbenannt.PNG

                  mickym 1 Reply Last reply Reply Quote 0
                  • mickym
                    mickym Most Active @G.Hawk last edited by mickym

                    @g-hawk Klapp mal oben das alles auf, was unter head steht. Und wieder Screenshot. Allerdings =$0 schon da steht sehe ich eher schwarz. Dann werden die Daten dynamisch bereitgestellt und nicht als HTML Seite.

                    G 1 Reply Last reply Reply Quote 0
                    • G
                      G.Hawk @mickym last edited by

                      @mickym
                      Unbenannt.PNG

                      mickym 1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @G.Hawk last edited by

                        @g-hawk Also ich befürchte, dass man das so nicht direkt auslesen kann, deswegen klappt es weder mit Blockly, NodeRed noch dem Parser. Ich kann Dir da leider auch nicht mehr weiter helfen. Kannst also NodeRed wieder löschen.

                        G 1 Reply Last reply Reply Quote 0
                        • G
                          G.Hawk @mickym last edited by G.Hawk

                          @mickym
                          Mit dem Parser klappt es ja mir fehlen nur die richtigen regex Befehle
                          Ich kann das so auslesen, das Problem das er den Wert nicht findet, tritt nur auf wenn der Wert negativ wird ich muss den RegEX Ausdruck "255":([\d.]+)" anpassen, ich weiß nur nicht wie
                          Gibt es nicht einen Online Generator dafür, der mir einfach den RegEX Ausdruck anzeigt, den ich da eintragen muss?

                          Und ich muss im Parser ankreuzen " Verwenden sie einen unsicheren HTTP Parser

                          mickym 2 Replies Last reply Reply Quote 0
                          • mickym
                            mickym Most Active @G.Hawk last edited by

                            @g-hawk Na ok - das bekommen wir hin. Also diesen negativ Wert brauchst Du - ein Minus davor hat nicht geklappt?

                            mickym G 2 Replies Last reply Reply Quote 0
                            • mickym
                              mickym Most Active @mickym last edited by

                              @mickym Hake in Node Red doch noch mal das hier an:

                              750a3577-ff34-4b92-99f8-20ca07b40276-image.png

                              1 Reply Last reply Reply Quote 0
                              • mickym
                                mickym Most Active @G.Hawk last edited by mickym

                                @g-hawk sagte in Parser Wert auslesen aber wie?:

                                Gibt es nicht einen Online Generator dafür, der mir einfach den RegEX Ausdruck anzeigt, den ich da eintragen muss?

                                Ja können wir machen du brauchst mE nur ein - davor mit ?

                                Aber probier mal parallel die Option disable strict parsing in Node Red

                                G 1 Reply Last reply Reply Quote 0
                                • G
                                  G.Hawk @mickym last edited by

                                  @mickym

                                  Also:
                                  Das ruft der Parser ab:

                                  {"meterId":"1KFM0000028196","deviceId":"EBSD1425009486","msgType":"EMETER_OBIS_V2","measurements":[{"timestamp":"2023-04-02T11:32:33Z","values":{"1-0:96.90.2*1":"7E2005D2","1-0:0.2.0*0":"312E3033","1-0:14.7.0*255":49.900001525878906,"1-0:81.7.26*255":52,"1-0:81.7.15*255":331,"1-0:81.7.4*255":188,"1-0:81.7.2*255":239,"1-0:81.7.1*255":117,"1-0:71.7.0*255":1.1100000143051147,"1-0:51.7.0*255":0.73000001907348633,"1-0:31.7.0*255":1.8999999761581421,"1-0:72.7.0*255":235.5,"1-0:52.7.0*255":233.80000305175781,"1-0:32.7.0*255":235.89999389648438,"1-0:16.7.0*255":-152,"1-0:2.8.0*255":0.52590000629425049,"1-0:1.8.0*255":10474.70703125,"1-0:96.1.0*255":"0A014B464D0000006E24","1-0:96.50.1*1":"4B464D"}}]}
                                  

                                  ich brauche die Werte hinter:

                                  1-0:16.7.0255
                                  1-0:2.8.0
                                  255
                                  1-0:1.8.0*255

                                  mickym 1 Reply Last reply Reply Quote 0
                                  • G
                                    G.Hawk @mickym last edited by

                                    @mickym sagte in Parser Wert auslesen aber wie?:

                                    @g-hawk sagte in Parser Wert auslesen aber wie?:

                                    Gibt es nicht einen Online Generator dafür, der mir einfach den RegEX Ausdruck anzeigt, den ich da eintragen muss?

                                    Ja können wir machen du brauchst mE nur ein - davor mit ?

                                    Aber probier mal parallel die Option disable strict parsing in Node Red

                                    Geht leider nicht

                                    1 Reply Last reply Reply Quote 0
                                    • mickym
                                      mickym Most Active @G.Hawk last edited by mickym

                                      @g-hawk sagte in Parser Wert auslesen aber wie?:

                                      1-0:16.7.0255

                                      So was immer in CodeTags - sonst verschluckt es den Stern:
                                      3469e347-e8e9-41f5-9073-a6e71ef9ce54-image.png

                                      Also ich weiss nicht wie das in dem Parser-Adapter eingetragen werden muss.
                                      Hier siehst du den ganzen Match und in der Group den Wert:

                                      (-?\d+\.?\d+)
                                      

                                      Damit kannst Du alle Zahlen auslesen - der Rest ist damit das vorne dran matched.

                                      Mit dem Link kannst Du selber testen.

                                      G 1 Reply Last reply Reply Quote 0
                                      • G
                                        G.Hawk @mickym last edited by

                                        @mickym
                                        Danke ich probiere es

                                        1 Reply Last reply Reply Quote 0
                                        • mickym
                                          mickym Most Active last edited by mickym

                                          @g-hawk So wenn das nicht klappt, dann schaun wir mal ob wir es mit Javascript hinbekommen. Ich habe in axios was gefunden mit dem man diese unsicheren Seiten abfragen kann:

                                          const axios = require('axios');
                                          
                                          const url = 'http://192.168.10.212/data'
                                          
                                          axios.get(url, { insecureHTTPParser: true }).then((response) => {
                                            console.log(response.data)
                                          })
                                          

                                          Probier doch mal dieses JS zu erstellen und schau ob damit der Aufruf funktioniert.

                                          ca40303f-595b-4308-90da-02f7c3c4b88b-image.png

                                          Wenn das hinhaut - dann haben wir gewonnen.

                                          G 1 Reply Last reply Reply Quote 0
                                          • G
                                            G.Hawk @mickym last edited by G.Hawk

                                            @mickym sagte in Parser Wert auslesen aber wie?:

                                                                                                                                                                        const axios = require('axios');                                                                                                                                                                                                                                                                                                                                                         const url = 'http://192.168.10.212/data'                                                                                                                                                                                                                                                                                                                                                         axios.get(url, { insecureHTTPParser: true }).then((response) => {                                                                                                                                                                              console.log(response.data)                                                                                                                                                                            })                                            
                                            

                                            Unten stehen die Daten wie auf der Website, aber was machen wir nun damit?
                                            Bekommt man die irgendwie in eine Datenpunkt?
                                            Ist das denn recourcenschonender als mit dem Parser?

                                            Mit dem Parser funktioniert es im Moment

                                            mickym 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            510
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            147
                                            7684
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo