Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Adapter - Parser (regEx)

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

Adapter - Parser (regEx)

Geplant Angeheftet Gesperrt Verschoben Tester
268 Beiträge 43 Kommentatoren 137.1k Aufrufe 9 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Lenny.CBL Offline
    Lenny.CBL Offline
    Lenny.CB
    Most Active
    schrieb am zuletzt editiert von
    #11

    erst einmal vielen Dank. Hilft prima um mal etwas dahinter zu steigen.

    Das Beispiel mit darksky.net habe ich schon angeschaut und auch ein wenig verstanden.

    nochmal zum Vertretungsplan. wenn ich http://www.fontane-schule-cottbus.de/fi … w00011.htm aufrufe, kann ich für Freitag diesen Block ermitteln: 983_plan.jpg
    dann müsste ich ja folgendes im Parser unter RegEx eintragen:

    list">(.*)
    ````aber da dort alle "****class=list****" sind (auch für die anderen Wochentage), ist das ja Quatsch.
    
    Was muss da rein damit das rock? :shock:
    1 Antwort Letzte Antwort
    0
    • S Offline
      S Offline
      stephan61
      schrieb am zuletzt editiert von
      #12

      Habe eine Frage zum Parser

      ich möchte die Werte von meiner Sonnoff seite auslesen

      Voltage und Pwer geht aber bei current kommt nur 0 wert ist aber 0,190

      wie muss die Reg ex aussehen

      516_parser.jpg

      Vielen Dank im Voraus

      Stephan

      1 Antwort Letzte Antwort
      0
      • P Offline
        P Offline
        pix
        schrieb am zuletzt editiert von
        #13

        Hallo,

        schön wäre es, wenn du deinen Code hier ins Forum in Code-Tags kopierst, dann muss man nicht lange abtippen vom Screenshot.

        Probier mal:

        \d.\d{0,3}(?= A)
        

        Sucht nach dem [LEERZEICHEN]A und nimmt dann die davorliegenden Zeichen (Zahl Nichtzahl Zahl(mit 0-3 Stellen))

        Hier ausprobiert: https://regex101.com/r/15a8oQ/1

        Gruß

        Pix

        ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

        1 Antwort Letzte Antwort
        0
        • HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #14

          Hallo pix, ich hänge mich hier mal dran, ohne den Fred kapern zu wollen.

          Ich habe mich durch die Doku gequält und versuche meine ersten Schritte.

          Ich möchte einen String aus einer Rückgabe auslesen: "abcxyz: 12b34c58 52d68i89: xyzbza"

          Und zwar hier die Daten zwischen den Doppelpunkten, ohne Doppelpunkte und das vordere Leerzeichen.

          Wollte gerade den String posten und muss feststellen, dass sich node-red.0 (master) und node-red1 (slave) wohl gegenseitig überschrieben haben :(

          Gruß

          Rainer

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          1 Antwort Letzte Antwort
          0
          • paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #15

            @Homoran:

            Ich möchte einen String aus einer Rückgabe auslesen: "abcxyz: 12b34c58 52d68i89: xyzbza"

            Und zwar hier die Daten zwischen den Doppelpunkten, ohne Doppelpunkte und das vordere Leerzeichen. `

            var s = "abcxyz: 12b34c58 52d68i89: xyzbza";
            s = s.split(': ')[1];
            

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            1 Antwort Letzte Antwort
            0
            • HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #16

              Hallo Paul,

              danke!

              Aber ich glaube das hatte ich bereits versucht, und bekomme dann den ganzen Schwanz incl. des zweiten Doppelpunkts und dem Kram danach.

              Ich will mich halt mit produktivem try and error dem Scripten endlich etwas nähern 8-)

              Gruß

              Rainer

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Antwort Letzte Antwort
              0
              • paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #17

                @Homoran:

                Aber ich glaube das hatte ich bereits versucht, und bekomme dann den ganzen Schwanz incl. des zweiten Doppelpunkts und dem Kram danach. `
                Sicher ? Ich habe das Script, so wie es im Beitrag steht, getestet: Bei mir funktioniert es !

                Zur Erläuterung: .split(': ') splittet den String in ein Array mit 3 Elementen, wobei ": " der Trenner und nicht im Array enthalten ist. [1] greift sich das mittlere Element.

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                1 Antwort Letzte Antwort
                0
                • ruhr70R Offline
                  ruhr70R Offline
                  ruhr70
                  schrieb am zuletzt editiert von
                  #18

                  Eigentlich macht das Skript von Paul das was Du laut Deiner Beschreibung erreichen wolltest.

                  Mit Split wird der String in drei Teile geteilt.

                  Trenner ist ": ".

                  Und mit [1] wird nur der zweite Teil genommen.

                  [0]abcxyz

                  [1]12b34c58 52d68i89

                  [2]xyzbza

                  Hast Du denn Paul Skript mal probiert?

                  Adapter: Fritzbox, Unify Circuit
                  Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                  1 Antwort Letzte Antwort
                  0
                  • G Offline
                    G Offline
                    Gürol
                    schrieb am zuletzt editiert von
                    #19

                    @Bluefox:

                    Zu viele unbekannte Kriterien:

                    -Post oder get?

                    • Ausgabe mit ajax?

                    Es ist alles mit JS möglich. `
                    Hallo Bluefox,

                    nachdem du schreibst, daß mit JS alles möglich ist.

                    Ich habe eine Seite den ich parsen möchte. Blöderweise will die Seite vorher ein Login via "Post". :(

                    Wie kann ich das bewerkstelligen?

                    Hier ist der Login-Code:

                    
                    <center>
                    
                    <form action="login" method="post">
                    
                    | <label for="username">Username
                     or Email</label>: |
                    
                     |
                    
                    | <label for="password">Password</label>: |
                    
                     |
                    
                    | <label for="rememberme">Remember Me</label>: |  |
                    
                    |  |  |
                    
                    </form>
                    
                    </center>
                    
                    

                    Danke im Voraus!

                    Gruß

                    Gürol

                    1 Antwort Letzte Antwort
                    0
                    • G Offline
                      G Offline
                      Gürol
                      schrieb am zuletzt editiert von
                      #20

                      Wenn Bluefox schon nicht dazu kommt zu antworten, kann mir jemand anderes meine Frage beantworten? :roll:

                      Kennt sich hier niemand mit Javascript aus? :shock:

                      Gruß

                      Gürol

                      1 Antwort Letzte Antwort
                      0
                      • HomoranH Nicht stören
                        HomoranH Nicht stören
                        Homoran
                        Global Moderator Administrators
                        schrieb am zuletzt editiert von
                        #21

                        Das liegt vielleicht daran, dass du hier im Tester Forum bist.

                        Stell die Frage doch bitte im Skripting Forum.

                        Gruß

                        Rainer

                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        1 Antwort Letzte Antwort
                        0
                        • Q Offline
                          Q Offline
                          Qlink
                          schrieb am zuletzt editiert von
                          #22

                          Hi Leute,

                          ich habe heute ebenfalls den Parser Adapter installiert und möchte damit das Internet Service Gateway(ISG) meiner Stiebel Eltron Wärmepumpe auslesen.

                          Ich finde leider keine Anleitung zu dem Parser Adapter.

                          Könnt ihr mir in die richtige Richtung helfen ?

                          Ich möchte z.B. folgende URL auslesen: http://192.168.222.20/?s=1,1

                          Die Seite sieht so aus:
                          415_isg_wp.png

                          Wenn ich beim Browser auf untersuchen gehe kommt folgendes:
                          415_isg_wp_chrome.png

                          und meine parser Einstellungen schauen so aus:
                          415_parser_isg_wp.png

                          Was muss ich bei RegEx eintragen um die verschiedenen Werte ausgelesen zu bekommen ?

                          Muss ich für jeden Wert und für jedes Wort eine eigene Regel erstellen ?

                          1 Antwort Letzte Antwort
                          0
                          • Q Offline
                            Q Offline
                            Qlink
                            schrieb am zuletzt editiert von
                            #23

                            Mit````
                            \d{0,3},\d{0,3}(?= bar)

                            
                            bekomme ich z.B. den korrekten Wert für HOCHDRUCK geliefert, aber auch nur den.
                            
                            Wie kann ich dann den Wert für NIEDERDRUCK auslesen, der ebenfalls mit bar als Einheit gelistet ist ?
                            
                            Muss ich also für jeden Wert den ich auslesen möchte, eine eigene Regel erstellen, oder gibt es einen anderen Weg als 30 Regeln pro Seite zu erstellen ?
                            1 Antwort Letzte Antwort
                            0
                            • HomoranH Nicht stören
                              HomoranH Nicht stören
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von
                              #24

                              Willst du den für jeden Wert einen ydatenpunkt jaben, z.B. um mit diesen Werten weiterzuarbeiten, oder z.B. als gauge darzustellen?

                              Gruß

                              Rainer

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              1 Antwort Letzte Antwort
                              0
                              • Q Offline
                                Q Offline
                                Qlink
                                schrieb am zuletzt editiert von
                                #25

                                Ich möchte alle Werte primär darstellen, aber auch mit flot Langzeitdiagramme erstellen.

                                Weiterverarbeiten ist nur bei einigen wenigen Werten notwendig.

                                Macht das einen Unterschied ?

                                1 Antwort Letzte Antwort
                                0
                                • HomoranH Nicht stören
                                  HomoranH Nicht stören
                                  Homoran
                                  Global Moderator Administrators
                                  schrieb am zuletzt editiert von
                                  #26

                                  Auch loggen und darstellen ist ein weiterverarbeiten :D

                                  Dann benötigst du auch einzelne Datenpunkte, und somit einzelne Regeln.

                                  Müssen ja nur einmal erstellt werden.

                                  Gruß

                                  Rainer

                                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                  1 Antwort Letzte Antwort
                                  0
                                  • Q Offline
                                    Q Offline
                                    Qlink
                                    schrieb am zuletzt editiert von
                                    #27

                                    Und wie kann ich z.B. Hochdruck und Niederdruck auslesen, bzw. allgemein Werte die dieselbe Einheit haben und auf derselben URL stehen ?

                                    Wenn ich \d{0,3},\d{0,3}(?= bar) bei der ersten Regel eingebe krieg ich automatisch den Wert für Hochdruck, wie müsste dann die Regel für den Niederdruckwert aussehen ?

                                    1 Antwort Letzte Antwort
                                    0
                                    • HomoranH Nicht stören
                                      HomoranH Nicht stören
                                      Homoran
                                      Global Moderator Administrators
                                      schrieb am zuletzt editiert von
                                      #28

                                      Hier kannst du mal testen

                                      https://regex101.com

                                      Achtung auf javascript umstellen

                                      Gruß

                                      Rainer

                                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                      1 Antwort Letzte Antwort
                                      0
                                      • ruhr70R Offline
                                        ruhr70R Offline
                                        ruhr70
                                        schrieb am zuletzt editiert von
                                        #29

                                        Kannst Du den Quellcode der Webseite hier posten. Dann kann man Dir besser helfen :-)

                                        Adapter: Fritzbox, Unify Circuit
                                        Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                                        1 Antwort Letzte Antwort
                                        0
                                        • P Offline
                                          P Offline
                                          pix
                                          schrieb am zuletzt editiert von
                                          #30

                                          Hallo,

                                          die Werte werden ja hübsch aufgelistet. Eigentlich musst du für jeden Wert eine neue Abfrage im Regexp Adapter machen.

                                          Ein Skript im Javascript Adapter sollte das auch können. Hab gerade keine Zeit, aber für ein ähnliches Projekt nutze ich den Node htmlparser.

                                          var htmlparser = require("htmlparser");
                                          

                                          https://www.npmjs.com/package/htmlparser

                                          Damit kann man dann die von HTML in JSON konvertierte Datei schön durcharbeiten.

                                          Das macht vor allem dann Sinn, wenn die Ausgabe der Werte auf der HTML-Seite nicht immer in der gleichen Reihenfolge stattfindet.

                                          Gruß

                                          Pix

                                          ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          809

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe