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.
    • 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

                                        897
                                        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