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. Skripten / Logik
  4. Node-Red
  5. [Gelöst] Werte von Clever Tanken

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    149

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

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

[Gelöst] Werte von Clever Tanken

Geplant Angeheftet Gesperrt Verschoben Node-Red
29 Beiträge 6 Kommentatoren 2.1k Aufrufe 4 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.
  • M merlin2k11

    @homoran
    Hallo Homoran, der Quellcode ist nun in einer TXT.

    Warum nicht von Tankerkönig? Das liegt an den genannten Kraftstoffen... auf Tankerkönig gibt es kein LPG. auch kein Strom

    Nur da wir hier 3 LPG Autos haben, ist das das was mich am meisten interessiert. Sprit ist da nur "nebensächlich" und wird eh nur alle 3-4 Monate gebraucht.

    Daher ist der Tanker"König" gar nicht so toll wie der Name sagt.

    HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von
    #6

    @merlin2k11 sagte in Preisabfrage von clever-tanken:

    Daher ist der Tanker"König" gar nicht so toll wie der Name sagt.

    dafür hat Herr Kurz als erster eine API zur Abfrage bereitgestellt, während bei clever tanken in den AGB steht

    Insbesondere ist es nicht gestattet, eigene Robots, Webcrawler oder sonstige Automatismen zu programmieren und die Inhalte von clever-tanken.de systematisch und umfassend in anderen Medien darzustellen oder für sonstige Zwecke zu extrahieren und zu verarbeiten.

    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 -

    mickymM 1 Antwort Letzte Antwort
    0
    • M merlin2k11

      @mickym vielen dank
      das schaut soweit schon gut aus.

      Danke

      mickymM Online
      mickymM Online
      mickym
      Most Active
      schrieb am zuletzt editiert von
      #7

      @merlin2k11 So ich bin einfach zu blöde für JSONATA manchmal - nun habe ich es wieder mit einer function Node gemacht. Um beides zu synchronisieren wird das Ganze über Flow-Variablen synchronisiert:

      f4d9d6ae-642b-432d-abe9-7243ad8fcc41-image.png

      [
         {
             "id": "67e607404c4e23a9",
             "type": "inject",
             "z": "02dece3d313bbbd7",
             "name": "",
             "props": [
                 {
                     "p": "trigger",
                     "v": "true",
                     "vt": "bool"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "",
             "x": 250,
             "y": 1940,
             "wires": [
                 [
                     "978278b345db5c20"
                 ]
             ]
         },
         {
             "id": "978278b345db5c20",
             "type": "http request",
             "z": "02dece3d313bbbd7",
             "name": "",
             "method": "GET",
             "ret": "txt",
             "paytoqs": "ignore",
             "url": "https://nopaste.net/WEArq4Mojd",
             "tls": "",
             "persist": false,
             "proxy": "",
             "insecureHTTPParser": false,
             "authType": "",
             "senderr": false,
             "headers": [],
             "x": 410,
             "y": 1940,
             "wires": [
                 [
                     "8817da5505a0693f",
                     "8788187a998a0e95"
                 ]
             ]
         },
         {
             "id": "8817da5505a0693f",
             "type": "html",
             "z": "02dece3d313bbbd7",
             "name": "",
             "property": "payload",
             "outproperty": "payload",
             "tag": "[class=\"price-type-name\"]",
             "ret": "html",
             "as": "single",
             "x": 650,
             "y": 1960,
             "wires": [
                 [
                     "02886d2e0b848154"
                 ]
             ]
         },
         {
             "id": "8788187a998a0e95",
             "type": "html",
             "z": "02dece3d313bbbd7",
             "name": "",
             "property": "payload",
             "outproperty": "payload",
             "tag": "[class=\"price-field\"]",
             "ret": "html",
             "as": "single",
             "x": 650,
             "y": 2020,
             "wires": [
                 [
                     "2d504fa994be0707"
                 ]
             ]
         },
         {
             "id": "2d504fa994be0707",
             "type": "split",
             "z": "02dece3d313bbbd7",
             "name": "",
             "splt": "\\n",
             "spltType": "str",
             "arraySplt": 1,
             "arraySpltType": "len",
             "stream": false,
             "addname": "",
             "x": 850,
             "y": 2020,
             "wires": [
                 [
                     "284ff73a429033e2"
                 ]
             ]
         },
         {
             "id": "284ff73a429033e2",
             "type": "change",
             "z": "02dece3d313bbbd7",
             "name": "",
             "rules": [
                 {
                     "t": "change",
                     "p": "payload",
                     "pt": "msg",
                     "from": ".*(\\d\\.\\d+).*\\s.*",
                     "fromt": "re",
                     "to": "$1",
                     "tot": "str"
                 },
                 {
                     "t": "set",
                     "p": "payload",
                     "pt": "msg",
                     "to": "$number(payload)\t",
                     "tot": "jsonata"
                 }
             ],
             "action": "",
             "property": "",
             "from": "",
             "to": "",
             "reg": false,
             "x": 1030,
             "y": 2020,
             "wires": [
                 [
                     "05e5ced4362eb8c0"
                 ]
             ]
         },
         {
             "id": "05e5ced4362eb8c0",
             "type": "join",
             "z": "02dece3d313bbbd7",
             "name": "",
             "mode": "auto",
             "build": "object",
             "property": "payload",
             "propertyType": "msg",
             "key": "topic",
             "joiner": "\\n",
             "joinerType": "str",
             "accumulate": "false",
             "timeout": "",
             "count": "",
             "reduceRight": false,
             "x": 1210,
             "y": 2020,
             "wires": [
                 [
                     "bfbea56e53fc265e"
                 ]
             ]
         },
         {
             "id": "02886d2e0b848154",
             "type": "change",
             "z": "02dece3d313bbbd7",
             "name": "",
             "rules": [
                 {
                     "t": "set",
                     "p": "Tankstelle.Kraftstoff",
                     "pt": "flow",
                     "to": "payload",
                     "tot": "msg"
                 }
             ],
             "action": "",
             "property": "",
             "from": "",
             "to": "",
             "reg": false,
             "x": 930,
             "y": 1960,
             "wires": [
                 []
             ]
         },
         {
             "id": "bfbea56e53fc265e",
             "type": "change",
             "z": "02dece3d313bbbd7",
             "name": "",
             "rules": [
                 {
                     "t": "set",
                     "p": "Tankstelle.Preise",
                     "pt": "flow",
                     "to": "payload",
                     "tot": "msg"
                 }
             ],
             "action": "",
             "property": "",
             "from": "",
             "to": "",
             "reg": false,
             "x": 1420,
             "y": 2020,
             "wires": [
                 [
                     "974f3660f83b4189"
                 ]
             ]
         },
         {
             "id": "974f3660f83b4189",
             "type": "function",
             "z": "02dece3d313bbbd7",
             "name": "create Object",
             "func": "var kraftstoffe = flow.get(\"Tankstelle\").Kraftstoff;\nvar preise = flow.get(\"Tankstelle\").Preise;\nvar i=0; \n\nmsg.payload={};\n\nfor (let x of kraftstoffe){\n    msg.payload[x] = preise[i];\n    i++;\n}\n\n\nreturn msg;",
             "outputs": 1,
             "noerr": 0,
             "initialize": "",
             "finalize": "",
             "libs": [],
             "x": 1210,
             "y": 2100,
             "wires": [
                 [
                     "46df44dc0df76366"
                 ]
             ]
         },
         {
             "id": "46df44dc0df76366",
             "type": "debug",
             "z": "02dece3d313bbbd7",
             "name": "debug 20",
             "active": true,
             "tosidebar": true,
             "console": false,
             "tostatus": false,
             "complete": "false",
             "statusVal": "",
             "statusType": "auto",
             "x": 1380,
             "y": 2100,
             "wires": []
         }
      ]
      

      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

      R 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @merlin2k11 sagte in Preisabfrage von clever-tanken:

        Daher ist der Tanker"König" gar nicht so toll wie der Name sagt.

        dafür hat Herr Kurz als erster eine API zur Abfrage bereitgestellt, während bei clever tanken in den AGB steht

        Insbesondere ist es nicht gestattet, eigene Robots, Webcrawler oder sonstige Automatismen zu programmieren und die Inhalte von clever-tanken.de systematisch und umfassend in anderen Medien darzustellen oder für sonstige Zwecke zu extrahieren und zu verarbeiten.

        mickymM Online
        mickymM Online
        mickym
        Most Active
        schrieb am zuletzt editiert von
        #8

        @homoran Ich verstehe diese Diskussion nicht - es geht darum, wie man aus einer HTML Seite mit Node-Red ähnlich wie mit dem Parser Daten auslesen und aufbereiten kann. Der Inhalt ist mir wurscht - man kann ja die Überschrift ändern und schreiben

        Website mit NodeRed parsen

        Aber ansonsten halte ich mich da raus - ich hab nun eine technische Lösung präsentiert und gut ist.

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        1 Antwort Letzte Antwort
        0
        • HomoranH Homoran

          @merlin2k11 sagte in Preisabfrage von clever-tanken:

          ich würde gerne von Tankstellen hier in der nähe die Preise auslesen.

          warum nicht mit dem Tankerkönig Adapter?

          und bitte keine externen Hoster für den Quelltext!
          bitte direkt hier im Forum hochladen, entweder als code in code-tags und Spoiler, oder wenn dafür zu groß als txt - Anhang

          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          schrieb am zuletzt editiert von
          #9

          @homoran sagte in Werte auslesen von Webseite:

          und bitte keine externen Hoster für den Quelltext!

          doch, wenn sie regex101 direkt nehmen dann schon
          dort kann man wunderschön einen link auf seine gespeicherten daten speichern

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          W 1 Antwort Letzte Antwort
          1
          • mickymM mickym

            @merlin2k11 So ich bin einfach zu blöde für JSONATA manchmal - nun habe ich es wieder mit einer function Node gemacht. Um beides zu synchronisieren wird das Ganze über Flow-Variablen synchronisiert:

            f4d9d6ae-642b-432d-abe9-7243ad8fcc41-image.png

            [
               {
                   "id": "67e607404c4e23a9",
                   "type": "inject",
                   "z": "02dece3d313bbbd7",
                   "name": "",
                   "props": [
                       {
                           "p": "trigger",
                           "v": "true",
                           "vt": "bool"
                       }
                   ],
                   "repeat": "",
                   "crontab": "",
                   "once": false,
                   "onceDelay": 0.1,
                   "topic": "",
                   "x": 250,
                   "y": 1940,
                   "wires": [
                       [
                           "978278b345db5c20"
                       ]
                   ]
               },
               {
                   "id": "978278b345db5c20",
                   "type": "http request",
                   "z": "02dece3d313bbbd7",
                   "name": "",
                   "method": "GET",
                   "ret": "txt",
                   "paytoqs": "ignore",
                   "url": "https://nopaste.net/WEArq4Mojd",
                   "tls": "",
                   "persist": false,
                   "proxy": "",
                   "insecureHTTPParser": false,
                   "authType": "",
                   "senderr": false,
                   "headers": [],
                   "x": 410,
                   "y": 1940,
                   "wires": [
                       [
                           "8817da5505a0693f",
                           "8788187a998a0e95"
                       ]
                   ]
               },
               {
                   "id": "8817da5505a0693f",
                   "type": "html",
                   "z": "02dece3d313bbbd7",
                   "name": "",
                   "property": "payload",
                   "outproperty": "payload",
                   "tag": "[class=\"price-type-name\"]",
                   "ret": "html",
                   "as": "single",
                   "x": 650,
                   "y": 1960,
                   "wires": [
                       [
                           "02886d2e0b848154"
                       ]
                   ]
               },
               {
                   "id": "8788187a998a0e95",
                   "type": "html",
                   "z": "02dece3d313bbbd7",
                   "name": "",
                   "property": "payload",
                   "outproperty": "payload",
                   "tag": "[class=\"price-field\"]",
                   "ret": "html",
                   "as": "single",
                   "x": 650,
                   "y": 2020,
                   "wires": [
                       [
                           "2d504fa994be0707"
                       ]
                   ]
               },
               {
                   "id": "2d504fa994be0707",
                   "type": "split",
                   "z": "02dece3d313bbbd7",
                   "name": "",
                   "splt": "\\n",
                   "spltType": "str",
                   "arraySplt": 1,
                   "arraySpltType": "len",
                   "stream": false,
                   "addname": "",
                   "x": 850,
                   "y": 2020,
                   "wires": [
                       [
                           "284ff73a429033e2"
                       ]
                   ]
               },
               {
                   "id": "284ff73a429033e2",
                   "type": "change",
                   "z": "02dece3d313bbbd7",
                   "name": "",
                   "rules": [
                       {
                           "t": "change",
                           "p": "payload",
                           "pt": "msg",
                           "from": ".*(\\d\\.\\d+).*\\s.*",
                           "fromt": "re",
                           "to": "$1",
                           "tot": "str"
                       },
                       {
                           "t": "set",
                           "p": "payload",
                           "pt": "msg",
                           "to": "$number(payload)\t",
                           "tot": "jsonata"
                       }
                   ],
                   "action": "",
                   "property": "",
                   "from": "",
                   "to": "",
                   "reg": false,
                   "x": 1030,
                   "y": 2020,
                   "wires": [
                       [
                           "05e5ced4362eb8c0"
                       ]
                   ]
               },
               {
                   "id": "05e5ced4362eb8c0",
                   "type": "join",
                   "z": "02dece3d313bbbd7",
                   "name": "",
                   "mode": "auto",
                   "build": "object",
                   "property": "payload",
                   "propertyType": "msg",
                   "key": "topic",
                   "joiner": "\\n",
                   "joinerType": "str",
                   "accumulate": "false",
                   "timeout": "",
                   "count": "",
                   "reduceRight": false,
                   "x": 1210,
                   "y": 2020,
                   "wires": [
                       [
                           "bfbea56e53fc265e"
                       ]
                   ]
               },
               {
                   "id": "02886d2e0b848154",
                   "type": "change",
                   "z": "02dece3d313bbbd7",
                   "name": "",
                   "rules": [
                       {
                           "t": "set",
                           "p": "Tankstelle.Kraftstoff",
                           "pt": "flow",
                           "to": "payload",
                           "tot": "msg"
                       }
                   ],
                   "action": "",
                   "property": "",
                   "from": "",
                   "to": "",
                   "reg": false,
                   "x": 930,
                   "y": 1960,
                   "wires": [
                       []
                   ]
               },
               {
                   "id": "bfbea56e53fc265e",
                   "type": "change",
                   "z": "02dece3d313bbbd7",
                   "name": "",
                   "rules": [
                       {
                           "t": "set",
                           "p": "Tankstelle.Preise",
                           "pt": "flow",
                           "to": "payload",
                           "tot": "msg"
                       }
                   ],
                   "action": "",
                   "property": "",
                   "from": "",
                   "to": "",
                   "reg": false,
                   "x": 1420,
                   "y": 2020,
                   "wires": [
                       [
                           "974f3660f83b4189"
                       ]
                   ]
               },
               {
                   "id": "974f3660f83b4189",
                   "type": "function",
                   "z": "02dece3d313bbbd7",
                   "name": "create Object",
                   "func": "var kraftstoffe = flow.get(\"Tankstelle\").Kraftstoff;\nvar preise = flow.get(\"Tankstelle\").Preise;\nvar i=0; \n\nmsg.payload={};\n\nfor (let x of kraftstoffe){\n    msg.payload[x] = preise[i];\n    i++;\n}\n\n\nreturn msg;",
                   "outputs": 1,
                   "noerr": 0,
                   "initialize": "",
                   "finalize": "",
                   "libs": [],
                   "x": 1210,
                   "y": 2100,
                   "wires": [
                       [
                           "46df44dc0df76366"
                       ]
                   ]
               },
               {
                   "id": "46df44dc0df76366",
                   "type": "debug",
                   "z": "02dece3d313bbbd7",
                   "name": "debug 20",
                   "active": true,
                   "tosidebar": true,
                   "console": false,
                   "tostatus": false,
                   "complete": "false",
                   "statusVal": "",
                   "statusType": "auto",
                   "x": 1380,
                   "y": 2100,
                   "wires": []
               }
            ]
            

            R Offline
            R Offline
            rewenode
            schrieb am zuletzt editiert von rewenode
            #10

            @mickym Wenn es nur um Jsonata geht, da kann ich helfen, was nicht heißt, dass es nicht noch einfacher geht.

            2022-09-10_10-16-52.png

            [
               {
                   "id": "df9f925401039198",
                   "type": "change",
                   "z": "d43ad352c5585762",
                   "name": "combine art and price",
                   "rules": [
                       {
                           "t": "set",
                           "p": "payload",
                           "pt": "msg",
                           "to": "(\t$art :=  $filter(payload,function(\t        $v,$i){\t          ($i)%2=0  \t        });\t$preis := $map($filter(payload,function(\t        $v,$i){\t          ($i)%2=1  \t        }),function($v,$i){\t            $split($v,\"\\n\")[2].$trim().$number()\t        })      \t        ;\t\t$map($art,function($v,$i){\t     $v & \": \" & $preis[$i]\t\t})\t\t)",
                           "tot": "jsonata"
                       }
                   ],
                   "action": "",
                   "property": "",
                   "from": "",
                   "to": "",
                   "reg": false,
                   "x": 280,
                   "y": 300,
                   "wires": [
                       [
                           "49c238fb0d7c57f6"
                       ]
                   ]
               }
            ]
            

            Gruß
            Reiner

            mickymM 1 Antwort Letzte Antwort
            0
            • OliverIOO OliverIO

              @homoran sagte in Werte auslesen von Webseite:

              und bitte keine externen Hoster für den Quelltext!

              doch, wenn sie regex101 direkt nehmen dann schon
              dort kann man wunderschön einen link auf seine gespeicherten daten speichern

              W Online
              W Online
              Wildbill
              schrieb am zuletzt editiert von
              #11

              @oliverio Es geht darum, dass Files (oder auch Bilder) vom extern Hoster auch mal gelöscht oder der Link geändert werden könnte. Dann ist das Anhängsel hier im Thread wertlos, da es sich nicht mehr öffnen lässt. Was direkt im Filesystem des Forums liegt, bleibt auch da, bislang auch nach Umzügen zu anderen Hostern.
              Deshalb sollte man immer Anhänge forenintern speichern und verlinken.

              Gruss, Jürgen

              1 Antwort Letzte Antwort
              0
              • R rewenode

                @mickym Wenn es nur um Jsonata geht, da kann ich helfen, was nicht heißt, dass es nicht noch einfacher geht.

                2022-09-10_10-16-52.png

                [
                   {
                       "id": "df9f925401039198",
                       "type": "change",
                       "z": "d43ad352c5585762",
                       "name": "combine art and price",
                       "rules": [
                           {
                               "t": "set",
                               "p": "payload",
                               "pt": "msg",
                               "to": "(\t$art :=  $filter(payload,function(\t        $v,$i){\t          ($i)%2=0  \t        });\t$preis := $map($filter(payload,function(\t        $v,$i){\t          ($i)%2=1  \t        }),function($v,$i){\t            $split($v,\"\\n\")[2].$trim().$number()\t        })      \t        ;\t\t$map($art,function($v,$i){\t     $v & \": \" & $preis[$i]\t\t})\t\t)",
                               "tot": "jsonata"
                           }
                       ],
                       "action": "",
                       "property": "",
                       "from": "",
                       "to": "",
                       "reg": false,
                       "x": 280,
                       "y": 300,
                       "wires": [
                           [
                               "49c238fb0d7c57f6"
                           ]
                       ]
                   }
                ]
                

                Gruß
                Reiner

                mickymM Online
                mickymM Online
                mickym
                Most Active
                schrieb am zuletzt editiert von
                #12

                @rewenode Ach schön dass Du Dich meldest - mein JSONATA Lehrer. Ich kanns nur leider nicht importieren - da Du den Export nicht in CodeTags gepackt hast und dann interpretiert der Browser irgendwelche Zeichen. Kannst Du es nochmal in CodeTags exportieren?

                Ja und war mir neu, wie oder dass man mehrere Abschnitte in der html node kombinieren kann. ;)

                So und die größte Herausforderung ist aber ken Array als Text, sondern ein Objekt mit den Kraftstoffen als Eingenschaften des Objektes wie bei mir unten.

                Also Ergebnis, sollte schon so aussehen:

                435fbad5-ebaa-48ff-9edf-a5fa0853bd86-image.png

                Ich scheitere immer daran die Objektingenschaften durch zu iterieren bzw. mappen.

                Aber vielleicht kannst Du ja erst mal Deinen Flow nochmal in CodeTags packen, damit ich es mir in Ruhe anschauen kann, aber wie gesagt Ziel wäre EIN Objekt mit den entsprechenden Eigenschaften zu haben. ;)

                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                R 1 Antwort Letzte Antwort
                0
                • mickymM mickym

                  @rewenode Ach schön dass Du Dich meldest - mein JSONATA Lehrer. Ich kanns nur leider nicht importieren - da Du den Export nicht in CodeTags gepackt hast und dann interpretiert der Browser irgendwelche Zeichen. Kannst Du es nochmal in CodeTags exportieren?

                  Ja und war mir neu, wie oder dass man mehrere Abschnitte in der html node kombinieren kann. ;)

                  So und die größte Herausforderung ist aber ken Array als Text, sondern ein Objekt mit den Kraftstoffen als Eingenschaften des Objektes wie bei mir unten.

                  Also Ergebnis, sollte schon so aussehen:

                  435fbad5-ebaa-48ff-9edf-a5fa0853bd86-image.png

                  Ich scheitere immer daran die Objektingenschaften durch zu iterieren bzw. mappen.

                  Aber vielleicht kannst Du ja erst mal Deinen Flow nochmal in CodeTags packen, damit ich es mir in Ruhe anschauen kann, aber wie gesagt Ziel wäre EIN Objekt mit den entsprechenden Eigenschaften zu haben. ;)

                  R Offline
                  R Offline
                  rewenode
                  schrieb am zuletzt editiert von
                  #13

                  @mickym sagte in Werte auslesen von Webseite:

                  Ich kanns nur leider nicht importieren - da Du den Export nicht in CodeTags gepackt hast und dann interpretiert der Browser irgendwelche Zeichen. Kannst Du es nochmal in CodeTags exportieren?

                  Oh, sorry ;-( Schau mal ob es jetzt geht. Hab deb Beitrag geändert.

                  Gruß
                  Reiner

                  mickymM 1 Antwort Letzte Antwort
                  0
                  • R rewenode

                    @mickym sagte in Werte auslesen von Webseite:

                    Ich kanns nur leider nicht importieren - da Du den Export nicht in CodeTags gepackt hast und dann interpretiert der Browser irgendwelche Zeichen. Kannst Du es nochmal in CodeTags exportieren?

                    Oh, sorry ;-( Schau mal ob es jetzt geht. Hab deb Beitrag geändert.

                    Gruß
                    Reiner

                    mickymM Online
                    mickymM Online
                    mickym
                    Most Active
                    schrieb am zuletzt editiert von
                    #14

                    @rewenode Ja jetzt ist die Change-Node solo drin und das wichtigste ist mit dem Code:

                    (
                    $art :=  $filter(payload,function(
                            $v,$i){
                              ($i)%2=0  
                            });
                    $preis := $map($filter(payload,function(
                            $v,$i){
                              ($i)%2=1  
                            }),function($v,$i){
                                $split($v,"\n")[2].$trim().$number()
                            })      
                            ;
                    
                    $map($art,function($v,$i){
                         $v & ": " & $preis[$i]
                    
                    })
                    
                    )
                    

                    Allerdings stimmt das Ergebnis nicht.

                    Schön wäre wie gesagt ein Objekt - Ok das bekomme ich nun auch ohne Flow variablen aber halt mit JS hin. Ich schau mir das nochmal in Ruhe an. Hab mal den Output in eine InjectNode gemacht, um nicht immer die Webabfrage zu starten:

                    0d019c68-67cb-4f21-8745-40335a12f1cf-image.png

                    Momentan kommt bei Deinem Code - immer noch ein Array, statt eines Objektes raus und die Werte passen noch nicht. Aber ich werde es erst nochmal so in JS machen und dann unterhalten wir uns über JSONATA. ;)

                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                    R 1 Antwort Letzte Antwort
                    0
                    • mickymM mickym

                      @rewenode Ja jetzt ist die Change-Node solo drin und das wichtigste ist mit dem Code:

                      (
                      $art :=  $filter(payload,function(
                              $v,$i){
                                ($i)%2=0  
                              });
                      $preis := $map($filter(payload,function(
                              $v,$i){
                                ($i)%2=1  
                              }),function($v,$i){
                                  $split($v,"\n")[2].$trim().$number()
                              })      
                              ;
                      
                      $map($art,function($v,$i){
                           $v & ": " & $preis[$i]
                      
                      })
                      
                      )
                      

                      Allerdings stimmt das Ergebnis nicht.

                      Schön wäre wie gesagt ein Objekt - Ok das bekomme ich nun auch ohne Flow variablen aber halt mit JS hin. Ich schau mir das nochmal in Ruhe an. Hab mal den Output in eine InjectNode gemacht, um nicht immer die Webabfrage zu starten:

                      0d019c68-67cb-4f21-8745-40335a12f1cf-image.png

                      Momentan kommt bei Deinem Code - immer noch ein Array, statt eines Objektes raus und die Werte passen noch nicht. Aber ich werde es erst nochmal so in JS machen und dann unterhalten wir uns über JSONATA. ;)

                      R Offline
                      R Offline
                      rewenode
                      schrieb am zuletzt editiert von
                      #15

                      @mickym Meinst du so?

                      2022-09-10_14-28-21.png

                      [
                         {
                             "id": "d43ad352c5585762",
                             "type": "tab",
                             "label": "Flow 3",
                             "disabled": false,
                             "info": "",
                             "env": []
                         },
                         {
                             "id": "67e607404c4e23a9",
                             "type": "inject",
                             "z": "d43ad352c5585762",
                             "name": "",
                             "props": [
                                 {
                                     "p": "trigger",
                                     "v": "true",
                                     "vt": "bool"
                                 }
                             ],
                             "repeat": "",
                             "crontab": "",
                             "once": false,
                             "onceDelay": 0.1,
                             "topic": "",
                             "x": 250,
                             "y": 40,
                             "wires": [
                                 [
                                     "978278b345db5c20"
                                 ]
                             ]
                         },
                         {
                             "id": "978278b345db5c20",
                             "type": "http request",
                             "z": "d43ad352c5585762",
                             "name": "",
                             "method": "GET",
                             "ret": "txt",
                             "paytoqs": "ignore",
                             "url": "https://nopaste.net/WEArq4Mojd",
                             "tls": "",
                             "persist": false,
                             "proxy": "",
                             "insecureHTTPParser": false,
                             "authType": "",
                             "senderr": false,
                             "headers": [],
                             "x": 250,
                             "y": 100,
                             "wires": [
                                 [
                                     "8817da5505a0693f"
                                 ]
                             ]
                         },
                         {
                             "id": "8817da5505a0693f",
                             "type": "html",
                             "z": "d43ad352c5585762",
                             "name": "",
                             "property": "payload",
                             "outproperty": "payload",
                             "tag": "[class=\"price-type-name\"],[class=\"price-field\"]",
                             "ret": "text",
                             "as": "single",
                             "x": 360,
                             "y": 160,
                             "wires": [
                                 [
                                     "df9f925401039198"
                                 ]
                             ]
                         },
                         {
                             "id": "49c238fb0d7c57f6",
                             "type": "debug",
                             "z": "d43ad352c5585762",
                             "name": "debug 21",
                             "active": true,
                             "tosidebar": true,
                             "console": false,
                             "tostatus": false,
                             "complete": "payload",
                             "targetType": "msg",
                             "statusVal": "",
                             "statusType": "auto",
                             "x": 240,
                             "y": 280,
                             "wires": []
                         },
                         {
                             "id": "df9f925401039198",
                             "type": "change",
                             "z": "d43ad352c5585762",
                             "name": "combine art and price",
                             "rules": [
                                 {
                                     "t": "set",
                                     "p": "payload",
                                     "pt": "msg",
                                     "to": "(\t   $art :=  $filter(\t       payload,\t       function(\t        $v,$i){\t          ($i)%2=0  \t        }\t   );\t   $preis := $map(\t       $filter(\t           payload,\t           function(\t        $v,$i){\t          ($i)%2=1  \t        }\t       ),\t       function($v,$i){\t           $split($v,\"\\n\")[2].$trim().$number().$formatNumber(\"#0.00\")\t        }\t   )      \t        ;\t   $map(\t       $art,\t       function($v,$i){\t     $v & \": \" & $preis[$i]\t}\t   ){$split(\":\")[0]: $split(\":\")[1]}\t\t)",
                                     "tot": "jsonata"
                                 }
                             ],
                             "action": "",
                             "property": "",
                             "from": "",
                             "to": "",
                             "reg": false,
                             "x": 280,
                             "y": 220,
                             "wires": [
                                 [
                                     "49c238fb0d7c57f6"
                                 ]
                             ]
                         }
                      ]
                      

                      Gruß
                      Reiner

                      mickymM 2 Antworten Letzte Antwort
                      0
                      • R rewenode

                        @mickym Meinst du so?

                        2022-09-10_14-28-21.png

                        [
                           {
                               "id": "d43ad352c5585762",
                               "type": "tab",
                               "label": "Flow 3",
                               "disabled": false,
                               "info": "",
                               "env": []
                           },
                           {
                               "id": "67e607404c4e23a9",
                               "type": "inject",
                               "z": "d43ad352c5585762",
                               "name": "",
                               "props": [
                                   {
                                       "p": "trigger",
                                       "v": "true",
                                       "vt": "bool"
                                   }
                               ],
                               "repeat": "",
                               "crontab": "",
                               "once": false,
                               "onceDelay": 0.1,
                               "topic": "",
                               "x": 250,
                               "y": 40,
                               "wires": [
                                   [
                                       "978278b345db5c20"
                                   ]
                               ]
                           },
                           {
                               "id": "978278b345db5c20",
                               "type": "http request",
                               "z": "d43ad352c5585762",
                               "name": "",
                               "method": "GET",
                               "ret": "txt",
                               "paytoqs": "ignore",
                               "url": "https://nopaste.net/WEArq4Mojd",
                               "tls": "",
                               "persist": false,
                               "proxy": "",
                               "insecureHTTPParser": false,
                               "authType": "",
                               "senderr": false,
                               "headers": [],
                               "x": 250,
                               "y": 100,
                               "wires": [
                                   [
                                       "8817da5505a0693f"
                                   ]
                               ]
                           },
                           {
                               "id": "8817da5505a0693f",
                               "type": "html",
                               "z": "d43ad352c5585762",
                               "name": "",
                               "property": "payload",
                               "outproperty": "payload",
                               "tag": "[class=\"price-type-name\"],[class=\"price-field\"]",
                               "ret": "text",
                               "as": "single",
                               "x": 360,
                               "y": 160,
                               "wires": [
                                   [
                                       "df9f925401039198"
                                   ]
                               ]
                           },
                           {
                               "id": "49c238fb0d7c57f6",
                               "type": "debug",
                               "z": "d43ad352c5585762",
                               "name": "debug 21",
                               "active": true,
                               "tosidebar": true,
                               "console": false,
                               "tostatus": false,
                               "complete": "payload",
                               "targetType": "msg",
                               "statusVal": "",
                               "statusType": "auto",
                               "x": 240,
                               "y": 280,
                               "wires": []
                           },
                           {
                               "id": "df9f925401039198",
                               "type": "change",
                               "z": "d43ad352c5585762",
                               "name": "combine art and price",
                               "rules": [
                                   {
                                       "t": "set",
                                       "p": "payload",
                                       "pt": "msg",
                                       "to": "(\t   $art :=  $filter(\t       payload,\t       function(\t        $v,$i){\t          ($i)%2=0  \t        }\t   );\t   $preis := $map(\t       $filter(\t           payload,\t           function(\t        $v,$i){\t          ($i)%2=1  \t        }\t       ),\t       function($v,$i){\t           $split($v,\"\\n\")[2].$trim().$number().$formatNumber(\"#0.00\")\t        }\t   )      \t        ;\t   $map(\t       $art,\t       function($v,$i){\t     $v & \": \" & $preis[$i]\t}\t   ){$split(\":\")[0]: $split(\":\")[1]}\t\t)",
                                       "tot": "jsonata"
                                   }
                               ],
                               "action": "",
                               "property": "",
                               "from": "",
                               "to": "",
                               "reg": false,
                               "x": 280,
                               "y": 220,
                               "wires": [
                                   [
                                       "49c238fb0d7c57f6"
                                   ]
                               ]
                           }
                        ]
                        

                        Gruß
                        Reiner

                        mickymM Online
                        mickymM Online
                        mickym
                        Most Active
                        schrieb am zuletzt editiert von mickym
                        #16

                        @rewenode Ja und nein - hab mal den Output in eine Inject Node gegeben, um nicht dauern die Webabfrage zu machen.

                        Klare Verbesserung aus der HTML Node - es werden nur die Textinhalte geholt.
                        Generell verstehe ich es - dass Du intern nun auch 2 Arrays machst, indem Du die geraden Elemente der $art zuweist und die ungeraden der $kraftstoff.
                        So bei dem Preis verstehe ich was Du machst - aber ich würde lieber Zahlen haben.

                        Dann lass uns mal zu der Zeile kommen, die in meinen Augen Probleme macht:

                         $split($v,"\n")[2].$trim().$number()
                        

                        Ich hab mal das formatNumber schon weggelassen, weil ich ja keine Strings haben möchte. Allerdings bekomme ich das Leerzeichen vor nicht weg.

                        Laut Beschreibung sollten ja auch führende Leerzeichen entfernt werden:

                        05ce1389-4efc-4029-bede-5d476c8dd33e-image.png

                        tut es aber nicht.

                        Das Einzige wie ich es nun hin bekomme, ist wenn man das Objekt zusammensetzt, das ich es dort nochmal mache:

                        $map(
                               $art,
                               function($v,$i){
                             $v & ": " & $preis[$i]
                        }
                           ){$split(":")[0]: $split(":")[1].$trim().$number()}
                        

                        Das eigentlich geniale an JSONATA bzw. verwirrende ist die Iteration zur Objekterzeugung - das geht einfach noch nicht so recht in meinem Schädel.

                        Sprich wenn ich die splits weglasse hast Du einfach ein array in dem Du mit maps, die zusammengesetzt sind.

                        $map(
                               $art,
                               function($v,$i){
                             $v & ": " & $preis[$i]
                        }
                           )
                        

                        ergibt also das Array.
                        1c78106b-b80f-49d0-92a5-b5d14642486b-image.png

                        Über das Verketten wird impliziert also jedes einzelne Array Element weiterverarbeitet. ;)

                           $map(
                               $art,
                               function($v,$i){
                             $v & ": " & $preis[$i]
                        }
                           ){$split(":")[0]: $split(":")[1].$trim().$number()}
                        

                        Das ist eigentlich das geniale an JSONATA - aber geht immer nicht so in den Kopf. Damit habe ich das gewünschte Ergebnis - wobei ich also

                        oben jetzt nur noch das $trim() stehen habe - da dort aus mir unerfindlichen Gründen die Zahlenumwandlung nicht geht:

                        48b2eb98-dd80-4ff8-8e1b-78dec200d2be-image.png

                        Man kann das $trim() oben sogar ganz weglassen.

                        :+1: :+1: :+1:

                        Also insgesamt sieht es nun so aus:

                        (
                           $art :=  $filter(
                               payload,
                               function(
                                $v,$i){
                                  ($i)%2=0  
                                }
                           );
                           $preis := $map(
                               $filter(
                                   payload,
                                   function(
                                $v,$i){
                                  ($i)%2=1  
                                }
                               ),
                               function($v,$i){
                                   $split($v,"\n")[2]
                                }
                           )      
                                ;
                           $map(
                               $art,
                               function($v,$i){
                             $v & ": " & $preis[$i]
                        }
                           ){$split(":")[0]: $split(":")[1].$trim().$number()}
                        
                        )
                        

                        Der Punkt ist ja eigentlich ein Abkürzung für das map - wenn ich also diesen kleinen Punkt machen - wird quasi aus jeder Property wieder ein Array Element gebildet.

                         $map(
                               $art,
                               function($v,$i){
                             $v & ": " & $preis[$i]
                        }
                           ).{$split(":")[0]: $split(":")[1].$trim().$number()}
                        

                        Dieser Punkt also ergibt dann:
                        8031deb9-11ce-4610-b202-3f6c00b1cbe4-image.png

                        Im Prinzip habe ich das verstanden - ich muss nur diese Verkettungen noch in meinen Kopf bekommen - jedenfalls ist diese Funktion schon mal zum Abspeichern.

                        Bleibt nur die Frage offen, warum funktioniert das Konvertieren in einen Zahlenwert oben nicht und unten schon???

                        EDIT: habe es auch mit dem Mapping oben versucht - das ergibt auch immer wieder Strings:

                        $preis := $map(
                               $filter(
                                   payload,
                                   function(
                                $v,$i){
                                  ($i)%2=1  
                                }
                               ),
                               function($v,$i){
                                   $split($v,"\n")[2] 
                                }
                                
                           ).$trim().$number() ;
                        

                        Erzeugt trotzdem:

                        151575f4-9f79-46b7-8e6c-391584d9a08c-image.png

                        Na zumindest funktioniert es wenn man es unten bei der Objekterstellung macht. Ich versuche das jetzt trotzdem nochmal mit regEx.

                        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                        1 Antwort Letzte Antwort
                        0
                        • R rewenode

                          @mickym Meinst du so?

                          2022-09-10_14-28-21.png

                          [
                             {
                                 "id": "d43ad352c5585762",
                                 "type": "tab",
                                 "label": "Flow 3",
                                 "disabled": false,
                                 "info": "",
                                 "env": []
                             },
                             {
                                 "id": "67e607404c4e23a9",
                                 "type": "inject",
                                 "z": "d43ad352c5585762",
                                 "name": "",
                                 "props": [
                                     {
                                         "p": "trigger",
                                         "v": "true",
                                         "vt": "bool"
                                     }
                                 ],
                                 "repeat": "",
                                 "crontab": "",
                                 "once": false,
                                 "onceDelay": 0.1,
                                 "topic": "",
                                 "x": 250,
                                 "y": 40,
                                 "wires": [
                                     [
                                         "978278b345db5c20"
                                     ]
                                 ]
                             },
                             {
                                 "id": "978278b345db5c20",
                                 "type": "http request",
                                 "z": "d43ad352c5585762",
                                 "name": "",
                                 "method": "GET",
                                 "ret": "txt",
                                 "paytoqs": "ignore",
                                 "url": "https://nopaste.net/WEArq4Mojd",
                                 "tls": "",
                                 "persist": false,
                                 "proxy": "",
                                 "insecureHTTPParser": false,
                                 "authType": "",
                                 "senderr": false,
                                 "headers": [],
                                 "x": 250,
                                 "y": 100,
                                 "wires": [
                                     [
                                         "8817da5505a0693f"
                                     ]
                                 ]
                             },
                             {
                                 "id": "8817da5505a0693f",
                                 "type": "html",
                                 "z": "d43ad352c5585762",
                                 "name": "",
                                 "property": "payload",
                                 "outproperty": "payload",
                                 "tag": "[class=\"price-type-name\"],[class=\"price-field\"]",
                                 "ret": "text",
                                 "as": "single",
                                 "x": 360,
                                 "y": 160,
                                 "wires": [
                                     [
                                         "df9f925401039198"
                                     ]
                                 ]
                             },
                             {
                                 "id": "49c238fb0d7c57f6",
                                 "type": "debug",
                                 "z": "d43ad352c5585762",
                                 "name": "debug 21",
                                 "active": true,
                                 "tosidebar": true,
                                 "console": false,
                                 "tostatus": false,
                                 "complete": "payload",
                                 "targetType": "msg",
                                 "statusVal": "",
                                 "statusType": "auto",
                                 "x": 240,
                                 "y": 280,
                                 "wires": []
                             },
                             {
                                 "id": "df9f925401039198",
                                 "type": "change",
                                 "z": "d43ad352c5585762",
                                 "name": "combine art and price",
                                 "rules": [
                                     {
                                         "t": "set",
                                         "p": "payload",
                                         "pt": "msg",
                                         "to": "(\t   $art :=  $filter(\t       payload,\t       function(\t        $v,$i){\t          ($i)%2=0  \t        }\t   );\t   $preis := $map(\t       $filter(\t           payload,\t           function(\t        $v,$i){\t          ($i)%2=1  \t        }\t       ),\t       function($v,$i){\t           $split($v,\"\\n\")[2].$trim().$number().$formatNumber(\"#0.00\")\t        }\t   )      \t        ;\t   $map(\t       $art,\t       function($v,$i){\t     $v & \": \" & $preis[$i]\t}\t   ){$split(\":\")[0]: $split(\":\")[1]}\t\t)",
                                         "tot": "jsonata"
                                     }
                                 ],
                                 "action": "",
                                 "property": "",
                                 "from": "",
                                 "to": "",
                                 "reg": false,
                                 "x": 280,
                                 "y": 220,
                                 "wires": [
                                     [
                                         "49c238fb0d7c57f6"
                                     ]
                                 ]
                             }
                          ]
                          

                          Gruß
                          Reiner

                          mickymM Online
                          mickymM Online
                          mickym
                          Most Active
                          schrieb am zuletzt editiert von mickym
                          #17

                          @rewenode Lieber Reiner - ich danke Dir wieder einmal so recht herzlich. :+1: :+1: :+1:

                          • ich bin immer noch verwirrt aber ich habe es nun in einen Einzeiler geschafft - danke für Deine Ideen. Hat mich Zeit gekostet - aber mit dem JSONATA Exerciser habe ich mich schrittweise vorgetastet. ;)

                          Die magische Zeile (JSONATA ist magisch) lautet:

                          payload#$i[$i%2=0]{$$.payload[$i]:($$.payload[$i+1].$match(/\d\.\d+/).match.$number())}
                          

                          efaf025f-1f72-4aab-8ce2-bf9d80acc397-image.png

                          Damit reduziert sich der ganze Flow auf:

                          Wenn man es als String dann auch noch mit den Nachkommastellen formatiert haben will kann man das dann ja noch einfach hinterher schieben. ;)

                          payload#$i[$i%2=0]{$$.payload[$i]:($$.payload[$i+1].$match(/\d\.\d+/).match.$number().$formatNumber("#0.00"))}
                          

                          5bea8dcc-96d2-43a3-862d-038e3d70d395-image.png

                          [
                             {
                                 "id": "02ee08c829c2819c",
                                 "type": "html",
                                 "z": "d93c602e39839f86",
                                 "name": "",
                                 "property": "payload",
                                 "outproperty": "payload",
                                 "tag": "[class=\"price-type-name\"],[class=\"price-field\"]",
                                 "ret": "text",
                                 "as": "single",
                                 "x": 630,
                                 "y": 1500,
                                 "wires": [
                                     [
                                         "c0a12f2315793304",
                                         "605a896c2a98a031"
                                     ]
                                 ]
                             },
                             {
                                 "id": "c0a12f2315793304",
                                 "type": "change",
                                 "z": "d93c602e39839f86",
                                 "name": "",
                                 "rules": [
                                     {
                                         "t": "set",
                                         "p": "payload",
                                         "pt": "msg",
                                         "to": "payload#$i[$i%2=0]{$$.payload[$i]:($$.payload[$i+1].$match(/\\d\\.\\d+/).match.$number())}",
                                         "tot": "jsonata"
                                     }
                                 ],
                                 "action": "",
                                 "property": "",
                                 "from": "",
                                 "to": "",
                                 "reg": false,
                                 "x": 930,
                                 "y": 1500,
                                 "wires": [
                                     [
                                         "c12b286429069877"
                                     ]
                                 ]
                             },
                             {
                                 "id": "c12b286429069877",
                                 "type": "debug",
                                 "z": "d93c602e39839f86",
                                 "name": "Spritpreise als Zahlen",
                                 "active": true,
                                 "tosidebar": true,
                                 "console": false,
                                 "tostatus": false,
                                 "complete": "payload",
                                 "targetType": "msg",
                                 "statusVal": "",
                                 "statusType": "auto",
                                 "x": 1160,
                                 "y": 1500,
                                 "wires": []
                             },
                             {
                                 "id": "900da6162b9d83d1",
                                 "type": "inject",
                                 "z": "d93c602e39839f86",
                                 "name": "",
                                 "props": [
                                     {
                                         "p": "trigger",
                                         "v": "true",
                                         "vt": "bool"
                                     }
                                 ],
                                 "repeat": "",
                                 "crontab": "",
                                 "once": false,
                                 "onceDelay": 0.1,
                                 "topic": "",
                                 "x": 190,
                                 "y": 1500,
                                 "wires": [
                                     [
                                         "f51fcc63c0935308"
                                     ]
                                 ]
                             },
                             {
                                 "id": "f51fcc63c0935308",
                                 "type": "http request",
                                 "z": "d93c602e39839f86",
                                 "name": "",
                                 "method": "GET",
                                 "ret": "txt",
                                 "paytoqs": "ignore",
                                 "url": "https://nopaste.net/WEArq4Mojd",
                                 "tls": "",
                                 "persist": false,
                                 "proxy": "",
                                 "insecureHTTPParser": false,
                                 "authType": "",
                                 "senderr": false,
                                 "headers": [],
                                 "x": 350,
                                 "y": 1500,
                                 "wires": [
                                     [
                                         "02ee08c829c2819c"
                                     ]
                                 ]
                             },
                             {
                                 "id": "605a896c2a98a031",
                                 "type": "change",
                                 "z": "d93c602e39839f86",
                                 "name": "",
                                 "rules": [
                                     {
                                         "t": "set",
                                         "p": "payload",
                                         "pt": "msg",
                                         "to": "payload#$i[$i%2=0]{$$.payload[$i]:($$.payload[$i+1].$match(/\\d\\.\\d+/).match.$number().$formatNumber(\"#0.00\"))}",
                                         "tot": "jsonata"
                                     }
                                 ],
                                 "action": "",
                                 "property": "",
                                 "from": "",
                                 "to": "",
                                 "reg": false,
                                 "x": 930,
                                 "y": 1540,
                                 "wires": [
                                     [
                                         "793bea5a23676fa7"
                                     ]
                                 ]
                             },
                             {
                                 "id": "793bea5a23676fa7",
                                 "type": "debug",
                                 "z": "d93c602e39839f86",
                                 "name": "Spritpreise formatiert als String",
                                 "active": true,
                                 "tosidebar": true,
                                 "console": false,
                                 "tostatus": false,
                                 "complete": "payload",
                                 "targetType": "msg",
                                 "statusVal": "",
                                 "statusType": "auto",
                                 "x": 1190,
                                 "y": 1540,
                                 "wires": []
                             }
                          ]
                          

                          :grin: :grin: :grin:

                          NodeRed ist einfach genial. ;)

                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                          R 1 Antwort Letzte Antwort
                          0
                          • mickymM mickym

                            @rewenode Lieber Reiner - ich danke Dir wieder einmal so recht herzlich. :+1: :+1: :+1:

                            • ich bin immer noch verwirrt aber ich habe es nun in einen Einzeiler geschafft - danke für Deine Ideen. Hat mich Zeit gekostet - aber mit dem JSONATA Exerciser habe ich mich schrittweise vorgetastet. ;)

                            Die magische Zeile (JSONATA ist magisch) lautet:

                            payload#$i[$i%2=0]{$$.payload[$i]:($$.payload[$i+1].$match(/\d\.\d+/).match.$number())}
                            

                            efaf025f-1f72-4aab-8ce2-bf9d80acc397-image.png

                            Damit reduziert sich der ganze Flow auf:

                            Wenn man es als String dann auch noch mit den Nachkommastellen formatiert haben will kann man das dann ja noch einfach hinterher schieben. ;)

                            payload#$i[$i%2=0]{$$.payload[$i]:($$.payload[$i+1].$match(/\d\.\d+/).match.$number().$formatNumber("#0.00"))}
                            

                            5bea8dcc-96d2-43a3-862d-038e3d70d395-image.png

                            [
                               {
                                   "id": "02ee08c829c2819c",
                                   "type": "html",
                                   "z": "d93c602e39839f86",
                                   "name": "",
                                   "property": "payload",
                                   "outproperty": "payload",
                                   "tag": "[class=\"price-type-name\"],[class=\"price-field\"]",
                                   "ret": "text",
                                   "as": "single",
                                   "x": 630,
                                   "y": 1500,
                                   "wires": [
                                       [
                                           "c0a12f2315793304",
                                           "605a896c2a98a031"
                                       ]
                                   ]
                               },
                               {
                                   "id": "c0a12f2315793304",
                                   "type": "change",
                                   "z": "d93c602e39839f86",
                                   "name": "",
                                   "rules": [
                                       {
                                           "t": "set",
                                           "p": "payload",
                                           "pt": "msg",
                                           "to": "payload#$i[$i%2=0]{$$.payload[$i]:($$.payload[$i+1].$match(/\\d\\.\\d+/).match.$number())}",
                                           "tot": "jsonata"
                                       }
                                   ],
                                   "action": "",
                                   "property": "",
                                   "from": "",
                                   "to": "",
                                   "reg": false,
                                   "x": 930,
                                   "y": 1500,
                                   "wires": [
                                       [
                                           "c12b286429069877"
                                       ]
                                   ]
                               },
                               {
                                   "id": "c12b286429069877",
                                   "type": "debug",
                                   "z": "d93c602e39839f86",
                                   "name": "Spritpreise als Zahlen",
                                   "active": true,
                                   "tosidebar": true,
                                   "console": false,
                                   "tostatus": false,
                                   "complete": "payload",
                                   "targetType": "msg",
                                   "statusVal": "",
                                   "statusType": "auto",
                                   "x": 1160,
                                   "y": 1500,
                                   "wires": []
                               },
                               {
                                   "id": "900da6162b9d83d1",
                                   "type": "inject",
                                   "z": "d93c602e39839f86",
                                   "name": "",
                                   "props": [
                                       {
                                           "p": "trigger",
                                           "v": "true",
                                           "vt": "bool"
                                       }
                                   ],
                                   "repeat": "",
                                   "crontab": "",
                                   "once": false,
                                   "onceDelay": 0.1,
                                   "topic": "",
                                   "x": 190,
                                   "y": 1500,
                                   "wires": [
                                       [
                                           "f51fcc63c0935308"
                                       ]
                                   ]
                               },
                               {
                                   "id": "f51fcc63c0935308",
                                   "type": "http request",
                                   "z": "d93c602e39839f86",
                                   "name": "",
                                   "method": "GET",
                                   "ret": "txt",
                                   "paytoqs": "ignore",
                                   "url": "https://nopaste.net/WEArq4Mojd",
                                   "tls": "",
                                   "persist": false,
                                   "proxy": "",
                                   "insecureHTTPParser": false,
                                   "authType": "",
                                   "senderr": false,
                                   "headers": [],
                                   "x": 350,
                                   "y": 1500,
                                   "wires": [
                                       [
                                           "02ee08c829c2819c"
                                       ]
                                   ]
                               },
                               {
                                   "id": "605a896c2a98a031",
                                   "type": "change",
                                   "z": "d93c602e39839f86",
                                   "name": "",
                                   "rules": [
                                       {
                                           "t": "set",
                                           "p": "payload",
                                           "pt": "msg",
                                           "to": "payload#$i[$i%2=0]{$$.payload[$i]:($$.payload[$i+1].$match(/\\d\\.\\d+/).match.$number().$formatNumber(\"#0.00\"))}",
                                           "tot": "jsonata"
                                       }
                                   ],
                                   "action": "",
                                   "property": "",
                                   "from": "",
                                   "to": "",
                                   "reg": false,
                                   "x": 930,
                                   "y": 1540,
                                   "wires": [
                                       [
                                           "793bea5a23676fa7"
                                       ]
                                   ]
                               },
                               {
                                   "id": "793bea5a23676fa7",
                                   "type": "debug",
                                   "z": "d93c602e39839f86",
                                   "name": "Spritpreise formatiert als String",
                                   "active": true,
                                   "tosidebar": true,
                                   "console": false,
                                   "tostatus": false,
                                   "complete": "payload",
                                   "targetType": "msg",
                                   "statusVal": "",
                                   "statusType": "auto",
                                   "x": 1190,
                                   "y": 1540,
                                   "wires": []
                               }
                            ]
                            

                            :grin: :grin: :grin:

                            NodeRed ist einfach genial. ;)

                            R Offline
                            R Offline
                            rewenode
                            schrieb am zuletzt editiert von rewenode
                            #18

                            @mickym sagte in Werte auslesen von Webseite:

                            Die magische Zeile (JSONATA ist magisch) lautet

                            Sehr gut !!! Die Verlockung ist immer groß, JSONata-Konstrukte bis zum Einzeiler zu komprimieren, zumal es oft möglich ist.
                            Gründe, warum ich das oft versuche zu vermeiden sind:

                            1. ich will auch 2 Wochen später noch kapieren, was ich hier eigentlich gemacht habe;-) Und wenn da noch RegEx-Ausdrücke drin sind, geht es fast nicht mehr ohne sinnige Kommentare
                            2. Man kann da schon ganz schön Zeit verdaddeln nur um ein paar Zeilen Code einzusparen

                            Aber Spaß kann das schon machen;-)

                            Gruß und schönen Sonntag
                            Reiner

                            mickymM 1 Antwort Letzte Antwort
                            0
                            • R rewenode

                              @mickym sagte in Werte auslesen von Webseite:

                              Die magische Zeile (JSONATA ist magisch) lautet

                              Sehr gut !!! Die Verlockung ist immer groß, JSONata-Konstrukte bis zum Einzeiler zu komprimieren, zumal es oft möglich ist.
                              Gründe, warum ich das oft versuche zu vermeiden sind:

                              1. ich will auch 2 Wochen später noch kapieren, was ich hier eigentlich gemacht habe;-) Und wenn da noch RegEx-Ausdrücke drin sind, geht es fast nicht mehr ohne sinnige Kommentare
                              2. Man kann da schon ganz schön Zeit verdaddeln nur um ein paar Zeilen Code einzusparen

                              Aber Spaß kann das schon machen;-)

                              Gruß und schönen Sonntag
                              Reiner

                              mickymM Online
                              mickymM Online
                              mickym
                              Most Active
                              schrieb am zuletzt editiert von mickym
                              #19

                              @rewenode Wenn ich Dich als Fachmann schon mal da habe. ;)

                              Wenn ich, wie anfangs 2 Arrays habe - und möchte eines als topics bzw. property und das andere als Value nehmen:

                              {
                                "topic": [
                                  "topic_01",
                                  "topic_02",
                                  "topic_03",
                                  "topic_04",
                                  "topic_05",
                                  "topic_06"
                                ],
                                "payload": [
                                  2.1,
                                  1.96,
                                  2.02,
                                  2.11,
                                  2.09,
                                  1.08
                                ]
                              }
                              

                              dann bringe ich es nicht hin ohne $distinct-Function ein sauberes Objekt zu bekommen:

                              topic#$i@$t.payload@$p{$t:$p[$i]}
                              

                              64d214d3-faa5-43b3-95a4-e321593a6b51-image.png

                              topic#$i@$t.payload@$p{$t:$distinct($p[$i])}
                              

                              d5b2bf69-a598-4899-a53f-ac19716fee55-image.png

                              Gibts da noch eine andere Möglichkeit zu verhindern, dass der payload - mal Anzahl der Elemente in einem Array rauskommt. In dieser Variable $i scheint es ein ganzes Array .

                              Eventuell muss man da vorher was ausfiltern, weil im Beispiel - enthält das $i ja skalare Werte:

                              2a3a3bd2-b074-44f2-bca6-e077822d7368-image.png

                              EDIT:

                              Ah ich habs :bulb: :bulb: :bulb: - muss man vorher ausfiltern. :+1: :+1:

                              topic#$i@$t.payload#$j@$p[$i=$j]{$t:$p}
                              

                              6fb28e78-8661-4e04-86fd-c0eb4085f6ca-image.png

                              Hier noch die praktische Anwendung in Node-Red:

                              192d6d02-ee65-4604-b5c0-8b5474c87649-image.png

                              [
                                 {
                                     "id": "18c446aa69e28041",
                                     "type": "debug",
                                     "z": "d93c602e39839f86",
                                     "name": "debug 33",
                                     "active": true,
                                     "tosidebar": true,
                                     "console": false,
                                     "tostatus": false,
                                     "complete": "payload",
                                     "targetType": "msg",
                                     "statusVal": "",
                                     "statusType": "auto",
                                     "x": 620,
                                     "y": 1720,
                                     "wires": []
                                 },
                                 {
                                     "id": "42812429ed0f9f97",
                                     "type": "change",
                                     "z": "d93c602e39839f86",
                                     "name": "",
                                     "rules": [
                                         {
                                             "t": "set",
                                             "p": "payload",
                                             "pt": "msg",
                                             "to": "topic#$i@$t.payload#$j@$p[$i=$j]{$t:$p}",
                                             "tot": "jsonata"
                                         },
                                         {
                                             "t": "delete",
                                             "p": "topic",
                                             "pt": "msg"
                                         }
                                     ],
                                     "action": "",
                                     "property": "",
                                     "from": "",
                                     "to": "",
                                     "reg": false,
                                     "x": 430,
                                     "y": 1720,
                                     "wires": [
                                         [
                                             "18c446aa69e28041"
                                         ]
                                     ]
                                 },
                                 {
                                     "id": "c6812ad471a59a61",
                                     "type": "comment",
                                     "z": "d93c602e39839f86",
                                     "name": "Kombiniere 2 Array in ein Objekt",
                                     "info": "",
                                     "x": 250,
                                     "y": 1660,
                                     "wires": []
                                 },
                                 {
                                     "id": "903758012f51ae5c",
                                     "type": "inject",
                                     "z": "d93c602e39839f86",
                                     "name": "",
                                     "props": [
                                         {
                                             "p": "payload"
                                         },
                                         {
                                             "p": "topic",
                                             "v": "[\"Diesel\",\"Super E10\",\"Super E5\",\"SuperPlus\",\"LKW-Diesel\",\"LPG\"]",
                                             "vt": "json"
                                         }
                                     ],
                                     "repeat": "",
                                     "crontab": "",
                                     "once": false,
                                     "onceDelay": 0.1,
                                     "topic": "",
                                     "payload": "[2.1,1.96,2.02,2.11,2.09,1.08]",
                                     "payloadType": "json",
                                     "x": 230,
                                     "y": 1720,
                                     "wires": [
                                         [
                                             "42812429ed0f9f97"
                                         ]
                                     ]
                                 }
                              ]
                              

                              Sorry dass ich den Thread etwas missbraucht habe. - Aber vielleicht ist das ja auch für andere interessant. Höre jetzt auch auf. ;) -

                              Danke Dir Reiner und auch einen schönen Sonntag. :)

                              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                              R 1 Antwort Letzte Antwort
                              0
                              • mickymM mickym

                                @rewenode Wenn ich Dich als Fachmann schon mal da habe. ;)

                                Wenn ich, wie anfangs 2 Arrays habe - und möchte eines als topics bzw. property und das andere als Value nehmen:

                                {
                                  "topic": [
                                    "topic_01",
                                    "topic_02",
                                    "topic_03",
                                    "topic_04",
                                    "topic_05",
                                    "topic_06"
                                  ],
                                  "payload": [
                                    2.1,
                                    1.96,
                                    2.02,
                                    2.11,
                                    2.09,
                                    1.08
                                  ]
                                }
                                

                                dann bringe ich es nicht hin ohne $distinct-Function ein sauberes Objekt zu bekommen:

                                topic#$i@$t.payload@$p{$t:$p[$i]}
                                

                                64d214d3-faa5-43b3-95a4-e321593a6b51-image.png

                                topic#$i@$t.payload@$p{$t:$distinct($p[$i])}
                                

                                d5b2bf69-a598-4899-a53f-ac19716fee55-image.png

                                Gibts da noch eine andere Möglichkeit zu verhindern, dass der payload - mal Anzahl der Elemente in einem Array rauskommt. In dieser Variable $i scheint es ein ganzes Array .

                                Eventuell muss man da vorher was ausfiltern, weil im Beispiel - enthält das $i ja skalare Werte:

                                2a3a3bd2-b074-44f2-bca6-e077822d7368-image.png

                                EDIT:

                                Ah ich habs :bulb: :bulb: :bulb: - muss man vorher ausfiltern. :+1: :+1:

                                topic#$i@$t.payload#$j@$p[$i=$j]{$t:$p}
                                

                                6fb28e78-8661-4e04-86fd-c0eb4085f6ca-image.png

                                Hier noch die praktische Anwendung in Node-Red:

                                192d6d02-ee65-4604-b5c0-8b5474c87649-image.png

                                [
                                   {
                                       "id": "18c446aa69e28041",
                                       "type": "debug",
                                       "z": "d93c602e39839f86",
                                       "name": "debug 33",
                                       "active": true,
                                       "tosidebar": true,
                                       "console": false,
                                       "tostatus": false,
                                       "complete": "payload",
                                       "targetType": "msg",
                                       "statusVal": "",
                                       "statusType": "auto",
                                       "x": 620,
                                       "y": 1720,
                                       "wires": []
                                   },
                                   {
                                       "id": "42812429ed0f9f97",
                                       "type": "change",
                                       "z": "d93c602e39839f86",
                                       "name": "",
                                       "rules": [
                                           {
                                               "t": "set",
                                               "p": "payload",
                                               "pt": "msg",
                                               "to": "topic#$i@$t.payload#$j@$p[$i=$j]{$t:$p}",
                                               "tot": "jsonata"
                                           },
                                           {
                                               "t": "delete",
                                               "p": "topic",
                                               "pt": "msg"
                                           }
                                       ],
                                       "action": "",
                                       "property": "",
                                       "from": "",
                                       "to": "",
                                       "reg": false,
                                       "x": 430,
                                       "y": 1720,
                                       "wires": [
                                           [
                                               "18c446aa69e28041"
                                           ]
                                       ]
                                   },
                                   {
                                       "id": "c6812ad471a59a61",
                                       "type": "comment",
                                       "z": "d93c602e39839f86",
                                       "name": "Kombiniere 2 Array in ein Objekt",
                                       "info": "",
                                       "x": 250,
                                       "y": 1660,
                                       "wires": []
                                   },
                                   {
                                       "id": "903758012f51ae5c",
                                       "type": "inject",
                                       "z": "d93c602e39839f86",
                                       "name": "",
                                       "props": [
                                           {
                                               "p": "payload"
                                           },
                                           {
                                               "p": "topic",
                                               "v": "[\"Diesel\",\"Super E10\",\"Super E5\",\"SuperPlus\",\"LKW-Diesel\",\"LPG\"]",
                                               "vt": "json"
                                           }
                                       ],
                                       "repeat": "",
                                       "crontab": "",
                                       "once": false,
                                       "onceDelay": 0.1,
                                       "topic": "",
                                       "payload": "[2.1,1.96,2.02,2.11,2.09,1.08]",
                                       "payloadType": "json",
                                       "x": 230,
                                       "y": 1720,
                                       "wires": [
                                           [
                                               "42812429ed0f9f97"
                                           ]
                                       ]
                                   }
                                ]
                                

                                Sorry dass ich den Thread etwas missbraucht habe. - Aber vielleicht ist das ja auch für andere interessant. Höre jetzt auch auf. ;) -

                                Danke Dir Reiner und auch einen schönen Sonntag. :)

                                R Offline
                                R Offline
                                rewenode
                                schrieb am zuletzt editiert von
                                #20

                                @mickym So?

                                2022-09-10_20-15-40.png

                                $.topic#$i{$$.topic[$i]:$$.payload[$i]}
                                

                                Ja, sollte vlt. ein eigener Thread werden

                                Gruß
                                Reiner

                                mickymM 1 Antwort Letzte Antwort
                                0
                                • R rewenode

                                  @mickym So?

                                  2022-09-10_20-15-40.png

                                  $.topic#$i{$$.topic[$i]:$$.payload[$i]}
                                  

                                  Ja, sollte vlt. ein eigener Thread werden

                                  Gruß
                                  Reiner

                                  mickymM Online
                                  mickymM Online
                                  mickym
                                  Most Active
                                  schrieb am zuletzt editiert von mickym
                                  #21

                                  @rewenode sagte in Werte auslesen von Webseite:

                                  $.topic#$i{$$.topic[$i]:$$.payload[$i]}

                                  Ja - das geht auch. :) - Meins ist umständlicher.

                                  Ist abgespeichert. ;)

                                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                  R 1 Antwort Letzte Antwort
                                  0
                                  • mickymM mickym

                                    @rewenode sagte in Werte auslesen von Webseite:

                                    $.topic#$i{$$.topic[$i]:$$.payload[$i]}

                                    Ja - das geht auch. :) - Meins ist umständlicher.

                                    Ist abgespeichert. ;)

                                    R Offline
                                    R Offline
                                    rewenode
                                    schrieb am zuletzt editiert von rewenode
                                    #22

                                    @mickym Oder auch so, um mal mit $zip zu spielen ;-)

                                    $zip($.topic,$.payload){$[0]:$[1]}
                                    

                                    #$i brauchts da natürlich nicht.
                                    In JSONata gibt es da immer 1000...

                                    Gruß
                                    Reiner

                                    mickymM 1 Antwort Letzte Antwort
                                    1
                                    • R rewenode

                                      @mickym Oder auch so, um mal mit $zip zu spielen ;-)

                                      $zip($.topic,$.payload){$[0]:$[1]}
                                      

                                      #$i brauchts da natürlich nicht.
                                      In JSONata gibt es da immer 1000...

                                      Gruß
                                      Reiner

                                      mickymM Online
                                      mickymM Online
                                      mickym
                                      Most Active
                                      schrieb am zuletzt editiert von mickym
                                      #23

                                      @rewenode sagte in Werte auslesen von Webseite:

                                      $zip($.topic,$.payload){$[0]:$[1]}

                                      Ich muss immer erst 2mal überlegen - OK die Zip Funktion ist ja beschrieben - aber ich bin wieder über das reduce in dem Objekt gestolpert. Das man mit 0 und 1 ja jedes Array-Element ;) durchiteriert wird - Aber auch sehr elegant.

                                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                      R 1 Antwort Letzte Antwort
                                      0
                                      • mickymM mickym

                                        @rewenode sagte in Werte auslesen von Webseite:

                                        $zip($.topic,$.payload){$[0]:$[1]}

                                        Ich muss immer erst 2mal überlegen - OK die Zip Funktion ist ja beschrieben - aber ich bin wieder über das reduce in dem Objekt gestolpert. Das man mit 0 und 1 ja jedes Array-Element ;) durchiteriert wird - Aber auch sehr elegant.

                                        R Offline
                                        R Offline
                                        rewenode
                                        schrieb am zuletzt editiert von
                                        #24

                                        @mickym zurück zum eigentlichen Thema. Einen hätte ich noch :-)
                                        Mit einem besseren Selektor wird es dann nur ein ganz kurzer Einzeiler

                                        2022-09-10_23-45-12.png

                                        .price-type-name, [id|=current-price]
                                        

                                        Und im Change dann:

                                        payload#$i[($i%2)=0]{$$.payload[$i]:$$.payload[$i+1].$number()}
                                        

                                        Gruß
                                        Reiner

                                        mickymM 1 Antwort Letzte Antwort
                                        0
                                        • R rewenode

                                          @mickym zurück zum eigentlichen Thema. Einen hätte ich noch :-)
                                          Mit einem besseren Selektor wird es dann nur ein ganz kurzer Einzeiler

                                          2022-09-10_23-45-12.png

                                          .price-type-name, [id|=current-price]
                                          

                                          Und im Change dann:

                                          payload#$i[($i%2)=0]{$$.payload[$i]:$$.payload[$i+1].$number()}
                                          

                                          Gruß
                                          Reiner

                                          mickymM Online
                                          mickymM Online
                                          mickym
                                          Most Active
                                          schrieb am zuletzt editiert von mickym
                                          #25

                                          @rewenode sagte in Werte auslesen von Webseite:

                                          Das mit dem JSONATA ist ja nun nach den vorherigen Ausführungen zu erklären ;) - aber mit den CSS Selektoren bist Du mir im Vorteil - auch wenn es in der Hilfe zur HTML Node verlinkt ist: https://github.com/fb55/css-select#user-content-supported-selectors

                                          Aber ich bevorzuge dann die andere Schreibweise mit [class="price-type-name"] und dann die Vergleiche zu machen. Das mit dem vorangestellten Punkt einer Klasse entspricht - ist mir bei CSS zwar prinzipiell bekannt, aber hätte ich hier nie verwendet. ;)

                                          6476581b-e6f7-4122-b9a5-095773bfe10d-image.png

                                          Ok - ich merke - ich beginne das mit den CSS Selektoren erst langsam zu verstehen. Dann geht das was @merlin2k11 gesagt hat, dass es nicht exakt übereinstimmen muss. :) - Klasse.

                                          Dann gehen aber noch ein paar mehr Selektoren:

                                          04028030-29a5-44cf-b1cb-e0fb117bb227-image.png

                                          7e9d3149-10f9-44fe-9d85-416fead1dfc1-image.png

                                          Ich hab heute jedenfalls wieder einiges von Dir gelernt.

                                          Vielen Dank! :)

                                          EDIT:

                                          Noch eine Info - wenn man eine Standalone Version von NodeRed nutzt, kann man auch den doppelten Kontextspeicher verwenden, dann muss man für solche Tests keine Webanfragen machen. ;)

                                          463bbd59-2e96-47f8-ae66-47ecebf6612c-image.png

                                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                          R 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

                                          763

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          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