Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Text mit PARSER Adapter auslesen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Text mit PARSER Adapter auslesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @man10to last edited by

      @man10to sagte in Text mit PARSER Adapter auslesen:

      Deswegen hier nochmal der richtige Inhalt..

      bitte den vollständigen Quelltext!

      der RegEx muss eindeutig sein. das kann man nur mit dem vollständigen Quelltext überprüfen.

      M 1 Reply Last reply Reply Quote 0
      • M
        man10to @Homoran last edited by

        @homoran
        Ok,
        der teil DEcemEMLP1 ist die eindeutige Ladepunktnummer auf mindestens isn Europa.
        Aber hier der ganze Quelltext ..
        Das ist ein csv Export aus dem Portal ...

        viele Grüße und vielen Dank aus dem Süden von Niedersachsen

        mfg
        egbert

        Standort;EVSE-ID;"Status des Ladepunkts";Parkplatz-Status;"Status des Steuergeräts";Straße;"Letzter abgeschlossener  Ladevorgang";Ort;Lage;Phase;Zugriffsart;reservierbar;Sticker;"Whitelist Kundengruppen"
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*991;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*881;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*771;Verfügbar;-;Online;"Lange Straße";"2022-10-12 07:53:24";Wolfenbüttel;;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*661;"E-Auto zieht keine Energie";-;Online;"Lange Straße";;Wolfenbüttel;;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*551;"E-Auto zieht keine Energie";-;Online;"Lange Straße";"2022-10-12 07:30:31";Wolfenbüttel;;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*442;Verfügbar;-;Online;"Lange Straße";"2022-10-07 16:28:13";Wolfenbüttel;4B;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*441;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;4A;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*332;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;3B;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*331;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;3A;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*222;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;2B;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*221;"E-Auto zieht keine Energie";-;Online;"Lange Straße";"2022-10-12 07:47:14";Wolfenbüttel;2A;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*112;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;1B;AC;RFID;1;;
        WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*111;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;1A;AC;RFID;1;;
        "Ostfalia_WF_R_Parkplatz Recht Salzdahlumer Str. 46/48";DE*cem*E809189*002;Verfügbar;-;Online;"Salzdahlumer Str.";"2022-10-12 13:04:50";Wolfenbüttel;;AC;RFID;1;;
        "Ostfalia_WF_R_Parkplatz Recht Salzdahlumer Str. 46/48";DE*cem*E809189*001;Verfügbar;-;Online;"Salzdahlumer Str.";"2022-10-12 11:00:24";Wolfenbüttel;;AC;RFID;1;;
        Ostfalia_SZ;DE*cem*E740796*004;"Versorgung läuft";-;Online;"Karl Scharfenberg";"2022-10-12 10:53:47";Salzgitter;;AC;RFID;1;;
        Ostfalia_SZ;DE*cem*E740796*003;"E-Auto zieht keine Energie";-;Online;"Karl Scharfenberg";"2022-10-12 09:50:42";Salzgitter;;AC;RFID;1;;
        Ostfalia_SZ;DE*cem*E740796*002;"E-Auto zieht keine Energie";-;Online;"Karl Scharfenberg";"2022-10-11 17:19:09";Salzgitter;;AC;RFID;1;;
        Ostfalia_SZ;DE*cem*E740796*001;"E-Auto zieht keine Energie";-;Online;"Karl Scharfenberg";"2022-10-11 13:08:10";Salzgitter;;AC;RFID;1;;
        Ostfalia_WF_H;DE*cem*ESLP2;"Versorgung läuft";-;Online;"Salzdahlumer Str.";"2022-10-12 11:33:27";Wolfenbüttel;;AC;RFID;1;;
        Ostfalia_WF_H;DE*cem*ESLP1;Verfügbar;-;Online;"Salzdahlumer Str.";"2022-10-12 12:41:51";Wolfenbüttel;;AC;RFID;1;;
        Ostfalia_WF_H;DE*cem*EMLP2;"Versorgung läuft";-;Besetzt;"Salzdahlumer Str.";"2022-10-11 15:45:30";Wolfenbüttel;;AC;RFID;1;;
        Ostfalia_WF_H;DE*cem*EMLP1;"Versorgung läuft";-;Besetzt;"Salzdahlumer Str.";"2022-10-12 11:39:19";Wolfenbüttel;;AC;RFID;1;;
        
        
        Homoran OliverIO 2 Replies Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @man10to last edited by

          @man10to sagte in Text mit PARSER Adapter auslesen:

          Leider scheinen die * (Sterne) noch ein Problem zu sein.

          nein! es gibt tatsächlich Einträge, die anders aussehen und wo die Anführungszeichen fehlen.
          erst recht ein Grund für vollständige Informationen
          @man10to sagte in Text mit PARSER Adapter auslesen:

          da ich vergessen hatte das als Code zu deklaieren.... '

          auch ein Beispiel warum code-tags so wichtig sind!
          https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1

          Wenn jetzt keine weiteren Überraschungen kommen:

          cem[^;]+;"?([^"]+)"

          M 1 Reply Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @man10to last edited by Homoran

            @man10to sagte in Text mit PARSER Adapter auslesen:

            Das ist ein csv Export aus dem Portal ...

            dann ist das kein Quelltext und wird nicht klappen, zumal hier anscheinend noch weitere Anführungszeichen geschlabbert werden

            EDIT: Das scheint zu klappen

            \*[^;]+;"?([^"]+)"

            1 Reply Last reply Reply Quote 0
            • M
              man10to @Homoran last edited by

              @homoran Ja du hast recht. Ich war zu schnell...
              Aus dem Qelltext möchte ich dann für jede ladestation den Status auslesen

              Dies sind die Stationskennungen, mal mit drei * mal mit zwei.

              DE*CEM*EWFOEK20*991
              DE*CEM*EWFOEK20*771
              DE*cem*E740796*004
              DE*cem*E809189*001
              DE*cem*ESLP2
              

              Und der Status kann dann sein:

              Verfügbar
              "Versorgung läuft"
              "E-Auto zieht keine Energie"
              "ESDI liefert keine Energie"
              
              

              h3.JPG ee3a7b57-b740-4bc8-a9eb-d6163e06aea8-grafik.png

              Standort;EVSE-ID;"Status des Ladepunkts";Parkplatz-Status;"Status des Steuergeräts";Straße;"Letzter abgeschlossener  Ladevorgang";Ort;Lage;Phase;Zugriffsart;reservierbar;Sticker;"Whitelist Kundengruppen"
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*991;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*881;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*771;Verfügbar;-;Online;"Lange Straße";"2022-10-12 07:53:24";Wolfenbüttel;;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*661;"E-Auto zieht keine Energie";-;Online;"Lange Straße";;Wolfenbüttel;;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*551;"E-Auto zieht keine Energie";-;Online;"Lange Straße";"2022-10-12 07:30:31";Wolfenbüttel;;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*442;Verfügbar;-;Online;"Lange Straße";"2022-10-07 16:28:13";Wolfenbüttel;4B;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*441;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;4A;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*332;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;3B;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*331;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;3A;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*222;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;2B;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*221;"E-Auto zieht keine Energie";-;Online;"Lange Straße";"2022-10-12 07:47:14";Wolfenbüttel;2A;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*112;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;1B;AC;RFID;1;;
              WF_Ortseingang-TELEKOM;DE*CEM*EWFOEK20*111;Verfügbar;-;Online;"Lange Straße";;Wolfenbüttel;1A;AC;RFID;1;;
              "Ostfalia_WF_R_Parkplatz Recht Salzdahlumer Str. 46/48";DE*cem*E809189*002;Verfügbar;-;Online;"Salzdahlumer Str.";"2022-10-12 13:04:50";Wolfenbüttel;;AC;RFID;1;;
              "Ostfalia_WF_R_Parkplatz Recht Salzdahlumer Str. 46/48";DE*cem*E809189*001;Verfügbar;-;Online;"Salzdahlumer Str.";"2022-10-12 11:00:24";Wolfenbüttel;;AC;RFID;1;;
              Ostfalia_SZ;DE*cem*E740796*004;"Versorgung läuft";-;Online;"Karl Scharfenberg";"2022-10-12 10:53:47";Salzgitter;;AC;RFID;1;;
              Ostfalia_SZ;DE*cem*E740796*003;"E-Auto zieht keine Energie";-;Online;"Karl Scharfenberg";"2022-10-12 09:50:42";Salzgitter;;AC;RFID;1;;
              Ostfalia_SZ;DE*cem*E740796*002;"E-Auto zieht keine Energie";-;Online;"Karl Scharfenberg";"2022-10-11 17:19:09";Salzgitter;;AC;RFID;1;;
              Ostfalia_SZ;DE*cem*E740796*001;"E-Auto zieht keine Energie";-;Online;"Karl Scharfenberg";"2022-10-11 13:08:10";Salzgitter;;AC;RFID;1;;
              Ostfalia_WF_H;DE*cem*ESLP2;"Versorgung läuft";-;Online;"Salzdahlumer Str.";"2022-10-12 11:33:27";Wolfenbüttel;;AC;RFID;1;;
              Ostfalia_WF_H;DE*cem*ESLP1;Verfügbar;-;Online;"Salzdahlumer Str.";"2022-10-12 12:41:51";Wolfenbüttel;;AC;RFID;1;;
              Ostfalia_WF_H;DE*cem*EMLP2;"Versorgung läuft";-;Besetzt;"Salzdahlumer Str.";"2022-10-11 15:45:30";Wolfenbüttel;;AC;RFID;1;;
              Ostfalia_WF_H;DE*cem*EMLP1;"Versorgung läuft";-;Besetzt;"Salzdahlumer Str.";"2022-10-12 11:39:19";Wolfenbüttel;;AC;RFID;1;;
              
              
              Homoran 1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @man10to last edited by

                @man10to sagte in Text mit PARSER Adapter auslesen:

                Aus dem Qelltext möchte ich dann für jede ladestation den Status auslesen

                da du mit dem Parser sowieso nur ein Ergebnis bekommst, ist es egal dass

                @man10to sagte in Text mit PARSER Adapter auslesen:

                die Stationskennungen, mal mit drei * mal mit zwei.

                sind.
                Dann kannst du den jeweiligen RegEx verwenden

                @man10to sagte in Text mit PARSER Adapter auslesen:

                Und der Status kann dann sein:

                das macht kein Problem.

                passt der zuletzt per Edit geschriebene RegEx?

                1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators @man10to last edited by

                  @man10to sagte in Text mit PARSER Adapter auslesen:

                  Gibt es irgend ein tutuorial in dem man das nachlesen kann ?

                  Screenshot_20221012-150434_Firefox.jpg

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    man10to @Homoran last edited by Homoran

                    @homoran bisher konnte ich da nur tests machen. Aber ein Tutuorium konnte ich nicht finden.

                    Irgendwie hab ich noch nicht rausgefunden wie man auf das 2 oder 4 te vorkommen zugreifen kann.
                    beim Test wird ja alles gefunden aber wenn im Adapter bekomme ich immer nur die erste Fundstelle angezeigt.
                    Auch wenn ich bei num eine andere einstelle

                    Ich suche mit "numberOfInstallations": "(.*\d+)
                    in dem folgenden Code und möchte z.b. das dritte vorkommen haben
                    oder geht das anders ? Ich möchte halt die insallierten bio, public oder windkraftanlagen auslesen

                    
                    {
                    
                        "regionCode": "03254",
                      "timestamp": {
                        "start": "1666177200",
                        "end": "1666178100"
                      },
                                "autarky": "27.933826145612795",
                      "secondaryInFeed": "24584.262896638596",
                      "consumptions": {
                        "list": [
                                      {
                            "name": "domestic",
                            "unit": "kWh",
                            "usage": "8541.133629709944",
                            "numberOfInstallations": "90296",
                            "timestamp": "1666177200"
                          },            {
                            "name": "public",
                            "unit": "kWh",
                            "usage": "646.2639121908843",
                            "numberOfInstallations": "1554",
                            "timestamp": "1666177200"
                          },            {
                            "name": "industrial",
                            "unit": "kWh",
                            "usage": "24926.058996408185",
                            "numberOfInstallations": "11532",
                            "timestamp": "1666177200"
                          }          ],
                        "total": "34113.456538309016"
                      },
                      "feedIn": {
                        "list": [
                                      {
                            "name": "bio",
                            "unit": "kWh",
                            "usage": "4590.596031211449",
                            "numberOfInstallations": "46",
                            "installedCapacity": "56246",
                            "timestamp": "1666177200"
                          },            {
                            "name": "solar",
                            "unit": "kWh",
                            "usage": "3806.189983341895",
                            "numberOfInstallations": "5026",
                            "installedCapacity": "80239.61100000002",
                            "timestamp": "1666177200"
                          },            {
                            "name": "water",
                            "unit": "kWh",
                            "usage": "332.00724527440605",
                            "numberOfInstallations": "19",
                            "installedCapacity": "3990",
                            "timestamp": "1666177200"
                          },            {
                            "name": "others",
                            "unit": "kWh",
                            "usage": "189.2494276691446",
                            "numberOfInstallations": "201",
                            "installedCapacity": "27607.77",
                            "timestamp": "1666177200"
                          },            {
                            "name": "wind",
                            "unit": "kWh",
                            "usage": "611.1509541735244",
                            "numberOfInstallations": "68",
                            "installedCapacity": "113850",
                            "timestamp": "1666177200"
                          }          ],
                        "total": "9529.193641670421"
                      },
                            "energyMix": "27.79763095775404",
                      "dailyCo2Savings": "87688.94558826505"
                    }
                    

                    MOD-EDIT: Code in code-tags gesetzt!

                    Homoran 1 Reply Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @man10to last edited by

                      @man10to sagte in Text mit PARSER Adapter auslesen:

                      Irgendwie hab ich noch nicht rausgefunden wie man auf das 2 oder 4 te vorkommen zugreifen kann.
                      beim Test wird ja alles gefunden aber wenn im Adapter bekomme ich immer nur die erste Fundstelle

                      indem du Num entsprechend anpasst

                      M 1 Reply Last reply Reply Quote 0
                      • OliverIO
                        OliverIO @man10to last edited by OliverIO

                        @man10to sagte in Text mit PARSER Adapter auslesen:

                        Das ist ein csv Export aus dem Portal

                        Wenn man mehrere Werte aus einem CSV auslesen möchte, wäre es dann nicht besser mit einem kleinen Skript zu arbeiten?
                        Das ist ja mühsam und fehleranfällig für jeden Datensatz und jedes Feld ein eigenes Regex zu erzeugen.
                        Mit der bibliothek https://www.npmjs.com/package/csv-parse
                        geht das wunderbar,

                        kann man die csv aus dem portal online direkt abrufen?

                        und zum 2. Beispiel im gleichen thread??? besser wäre dazu ein neuen thread anzulegen
                        das ist doch direkt json, auch hier geht das mit einem skript wesentlich einfacher als den mit regex zu interpretieren.
                        wenn du vom 2. oder 3. redest. das kann bei einem anderen abruf schon wieder eine andere reihenfolge haben und dann ist es das 5.
                        und er hat den code/json schon wieder nicht in code-tags gepackt.

                        wenn ihr euch nicht sicher seid ob das genau die richtige lösung ist, dann bitte ergebnisoffen fragen. sonst fallen wir (auch ich) immer wieder drauf rein, das das nicht die beste lösung ist und helfen (doktern) an lösungen herum die eigentlich keine guten sind und morgen schon wieder umfallen. =frust bei allen

                        Homoran 1 Reply Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators @OliverIO last edited by

                          @oliverio sagte in Text mit PARSER Adapter auslesen:

                          wäre es dann nicht besser mit einem kleinen Skript zu arbeiten?

                          ja!

                          1 Reply Last reply Reply Quote 0
                          • M
                            man10to @Homoran last edited by

                            @homoran das hab ich versucht, aber wenn ich etwas anderes als 0 einstelle wird nichts mehr angezeigt ...

                            Homoran 1 Reply Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators @man10to last edited by

                              @man10to sagte in Text mit PARSER Adapter auslesen:

                              @homoran das hab ich versucht, aber wenn ich etwas anderes als 0 einstelle wird nichts mehr angezeigt ...

                              zeigen

                              M 1 Reply Last reply Reply Quote 0
                              • M
                                man10to @Homoran last edited by

                                @homoran

                                sobald ich bei Num was anderes einstelle wird das bei Ergebniss nicht angezeigt ...

                                6f20285f-c89d-4465-98bf-909f3d70e439-grafik.png

                                8a7f6b88-f623-4c08-ad50-6c4873e3b9cf-grafik.png

                                Homoran 1 Reply Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @man10to last edited by

                                  @man10to das ist doch nicht mein RegEx!

                                  M 1 Reply Last reply Reply Quote 0
                                  • M
                                    man10to @Homoran last edited by

                                    @homoran ok, wo gibt es deins ?

                                    Homoran 1 Reply Last reply Reply Quote 0
                                    • Homoran
                                      Homoran Global Moderator Administrators @man10to last edited by Homoran

                                      @man10to was ist hier eigentlich los?
                                      Hier scheint es drunter und drüber zu gehen.

                                      geht es hier dauernd um verschiedene Quelltexte?
                                      oder kommen "nur" dauernd neue Informationen?

                                      ich habe immer den gesamten Quelltext haben wollen, damit man wahlweise ein eindeutiges Ergebnis, oder ein mehrfach nutzbares ReEx erstellen kann. Mit Schnipseln geht das nicht. Und ein Einzeltreffer kann bei einem ungeeigneten RegEx nicht einfach per Num für andere Fundstellen genutzt werden.

                                      für dein letztes JSON wäre es berOfI[^\:]+\: \"(\d+) da geht es auch mit NUM
                                      aber mach es besser mit einem Skript

                                      M 1 Reply Last reply Reply Quote 0
                                      • M
                                        man10to @Homoran last edited by

                                        @homoran Es tut mir echt leid das ich das so unkoordiniert gemacht habe.
                                        Nach deinem ersten Hinweis auf den ganzen Quelltext habe ich wirklich versucht immer den ganzen Quelltext zu versenden.
                                        Ich bin dir sehr Dankbar für die Hilfe und un funktioniert das auch genauso wie gewünscht. Ich findes es fanzinierend wie schnell und gut du Antwortest und kann deine Verärgerung schon etwas nachvollziehen.
                                        Mein erster Ansatz war ja das ich selbst herausfinde wie solche Strings gefunden werden. Leider komme ich mit der Seite zum testen zar zum Testen kalr aber nicht für die Anleitung bzw das verständniss wie genau die syntax ist.
                                        Gibt es da überhaupt etwas ?

                                        Nochmals entschuldigung für die Verwirrung..

                                        Egbert

                                        Homoran 1 Reply Last reply Reply Quote 0
                                        • Homoran
                                          Homoran Global Moderator Administrators @man10to last edited by

                                          @man10to sagte in Text mit PARSER Adapter auslesen:

                                          Gibt es da überhaupt etwas ?

                                          nicht wirklich, aber in regex101 wird jede Regel einzeln sehr gut erklärt, und wenn du einen kompletten RegEx gebaut hast, wird dieser nochmals in seine Bestandteile zerlegt erläutert

                                          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

                                          947
                                          Online

                                          31.9k
                                          Users

                                          80.1k
                                          Topics

                                          1.3m
                                          Posts

                                          3
                                          22
                                          904
                                          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