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. Daten aus einer URL in eine Variable schreiben

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    334

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

Daten aus einer URL in eine Variable schreiben

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
28 Beiträge 11 Kommentatoren 5.3k Aufrufe
  • Ä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.
  • S Offline
    S Offline
    stoepselinho
    schrieb am zuletzt editiert von
    #12

    Hallo,

    der erste Rote wert müsste der aktuelle Verbrauch sein und der zweite der aktuelle Ertrag.

    m[mi++]="30.01.17 19:15:00|568;0;6100|0;0;0;309;0;0"

    1 Antwort Letzte Antwort
    0
    • S Offline
      S Offline
      stoepselinho
      schrieb am zuletzt editiert von
      #13

      keine Idee wie man an den zweiten Wert kommt?

      1 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        moebius
        schrieb am zuletzt editiert von
        #14

        mit node-red zB:````
        [{"id":"d622dd6c.13e18","type":"tab","label":"Flow 6"},{"id":"abca901f.329ba","type":"inject","z":"d622dd6c.13e18","name":"","topic":"","payload":"m[mi++]="28.01.17 18:20:00|623;0;8368|0;0;0;6275;0;0"","payloadType":"str","repeat":"","crontab":"","once":false,"x":123,"y":61,"wires":[["a8676829.f6bd48"]]},{"id":"a8676829.f6bd48","type":"split","z":"d622dd6c.13e18","name":"","splt":"|","x":263,"y":112,"wires":[["dd824334.af6fc"]]},{"id":"d54f3a3c.30d558","type":"split","z":"d622dd6c.13e18","name":"","splt":";","x":561,"y":199,"wires":[["fcd7879b.764f28"]]},{"id":"1bca33e3.e423fc","type":"debug","z":"d622dd6c.13e18","name":"","active":true,"console":"false","complete":"true","x":859,"y":264,"wires":[]},{"id":"dd824334.af6fc","type":"switch","z":"d622dd6c.13e18","name":"","property":"parts.index","propertyType":"msg","rules":[{"t":"gt","v":"0","vt":"num"}],"checkall":"true","outputs":1,"x":419,"y":152,"wires":[["d54f3a3c.30d558"]]},{"id":"fcd7879b.764f28","type":"switch","z":"d622dd6c.13e18","name":"","property":"parts.index","propertyType":"msg","rules":[{"t":"eq","v":"0","vt":"num"}],"checkall":"true","outputs":1,"x":713,"y":237,"wires":[["1bca33e3.e423fc"]]}]

        Du müsstest noch inject durch den http request ersetzen.
        [1803_clipboard02.jpg](/assets/uploads/files/1803_clipboard02.jpg)
        1 Antwort Letzte Antwort
        0
        • BluefoxB Offline
          BluefoxB Offline
          Bluefox
          schrieb am zuletzt editiert von
          #15
          var text = 'm[mi++]="28.01.17 18:20:00|623;0;8368|0;0;0;6275;0;0"\n';
          text += 'm[mi++]="28.01.17 18:15:00|623;0;8317|0;0;0;6275;0;0"\n';
          text += 'm[mi++]="28.01.17 18:10:00|652;0;8265|0;0;0;6275;0;0"\n';
          
          var m = text.match(/\|(\d+);/g);
          console.log(JSON.stringify(m));
          console.log(m[0].substring(1, m[0].length - 1) + ' - ' + m[1].substring(1, m[1].length - 1));
          

          URL kann man so bekommen:

          var request = require('request');
          createState('myState1', {unit: 'W', type: 'number'});
          createState('myState2', {unit: 'W', type: 'number'});
          request('http://google.com', function (err, resp, body) {
          	if (body) {
          		var m = text.match(/\|(\d+);/g);
          		if (m && m.length > 1) {
          		       setState('myState1', parseInt(m[0].substring(1, m[0].length - 1) , 10), true);
          		       setState('myState2', parseInt(m[1].substring(1, m[1].length - 1) , 10), true);
          		}
          	} else {
          		console.warn('NO response: ' + err);
          	}
          });
          
          
          1 Antwort Letzte Antwort
          0
          • S Offline
            S Offline
            stoepselinho
            schrieb am zuletzt editiert von
            #16

            @moebius:

            mit node-red zB:````
            [{"id":"d622dd6c.13e18","type":"tab","label":"Flow 6"},{"id":"abca901f.329ba","type":"inject","z":"d622dd6c.13e18","name":"","topic":"","payload":"m[mi++]="28.01.17 18:20:00|623;0;8368|0;0;0;6275;0;0"","payloadType":"str","repeat":"","crontab":"","once":false,"x":123,"y":61,"wires":[["a8676829.f6bd48"]]},{"id":"a8676829.f6bd48","type":"split","z":"d622dd6c.13e18","name":"","splt":"|","x":263,"y":112,"wires":[["dd824334.af6fc"]]},{"id":"d54f3a3c.30d558","type":"split","z":"d622dd6c.13e18","name":"","splt":";","x":561,"y":199,"wires":[["fcd7879b.764f28"]]},{"id":"1bca33e3.e423fc","type":"debug","z":"d622dd6c.13e18","name":"","active":true,"console":"false","complete":"true","x":859,"y":264,"wires":[]},{"id":"dd824334.af6fc","type":"switch","z":"d622dd6c.13e18","name":"","property":"parts.index","propertyType":"msg","rules":[{"t":"gt","v":"0","vt":"num"}],"checkall":"true","outputs":1,"x":419,"y":152,"wires":[["d54f3a3c.30d558"]]},{"id":"fcd7879b.764f28","type":"switch","z":"d622dd6c.13e18","name":"","property":"parts.index","propertyType":"msg","rules":[{"t":"eq","v":"0","vt":"num"}],"checkall":"true","outputs":1,"x":713,"y":237,"wires":[["1bca33e3.e423fc"]]}]

            Du müsstest noch inject durch den http request ersetzen. `  
            

            hab das versucht, bekomm das irgendwie nicht hin. wie genau funktioniert das denn mit dem node-red? angezeigt wird es mir aber wo wird es denn gespeichert

            1 Antwort Letzte Antwort
            0
            • M Offline
              M Offline
              moebius
              schrieb am zuletzt editiert von
              #17

              Was genau hast du versucht? Was genau hat nicht funktioniert?

              Wenn du was mit node-red machen willst, schau dir bitte doch mal die schöne Hilfe die Homoran geschrieben hat an:

              http://www.iobroker.net/?page_id=4284&lang=de

              Da steht auch drin, wie du Werte von node-red wieder in iobroker speichern kannst.

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

                Für den zweiten Wert nimmst du diesen Ausdruck (vorausgesetzt, der Wert 6275 bleibt immer gleich; könnte aber auch ohne 6275 gehen)

                [0-9]*(?=;0;0;6275)
                

                https://regex101.com/r/QFGi6C/1

                Sorry, hatte den Thread schon wieder vergessen.

                Pix

                EDIT: Also in http://forum.iobroker.net/viewtopic.php?f=21&t=5039&p=51250#p50343 ist der grüne Wert (0) gemeint

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

                1 Antwort Letzte Antwort
                0
                • S Offline
                  S Offline
                  stoepselinho
                  schrieb am zuletzt editiert von
                  #19

                  das scheint nicht zu klappen,

                  die werte sind nur 0 wenn die anlage nicht läuft. Jetzt sieht die Zeile so aus:

                  m[mi++]="04.02.17 12:50:00|462;0;3636|665;463;258;3218;405;406"

                  mit dem Code so funktionierts

                  [0-9]*(?=;*[0-9]*;*[0-9]*;*[0-9]*;*[0-9]*;*[0-9]*;*[0-9]")
                  
                  1 Antwort Letzte Antwort
                  0
                  • P Offline
                    P Offline
                    pix
                    schrieb am zuletzt editiert von
                    #20

                    Super gelöst! Danke fürs Feedback.

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

                    1 Antwort Letzte Antwort
                    0
                    • R Offline
                      R Offline
                      ralalla
                      schrieb am zuletzt editiert von
                      #21

                      Würde auch gerne den Parser nutzen um den Wasserstand eines Flusses auszulesen.

                      Z. B. von dieser URL http://www.hochwasser-rlp.de/hoechststa … l/BETZDORF

                      den Wasserstand der unter der Grafik hinter : letzter Messwert angezeigt wird.

                      Mit der Parser Testseite komme ich gar nicht klar sonst hätte ich da schon probiert.

                      ioBroker auf Intel NUC mit Proxmox / PiVCCU auf Pi3

                      1 Antwort Letzte Antwort
                      0
                      • S Offline
                        S Offline
                        stoepselinho
                        schrieb am zuletzt editiert von
                        #22

                        würde gerne noch weitere Werte aus der zeile haben, bekomme es aber nicht hin. jemand eine idee?

                        m[mi++]="04.04.17 20:20:00|557;0;5473|0;0;0;17107;0;0"

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

                          @stoepselinho:

                          würde gerne noch weitere Werte aus der zeile haben, bekomme es aber nicht hin. jemand eine idee?

                          m[mi++]="04.04.17 20:20:00|557;0;5473|0;0;0;17107;0;0" `

                          \d+;
                          -> 557
                          
                          \d+;(\d+)
                          -> 0
                          
                          \d+;\d+;(\d+)
                          -> 5473
                          
                          \d+;\d+;\d+\|(\d+)
                          -> 0
                          
                          \d+;\d+;\d+\|\d+;(\d+)
                          -> 0
                          
                          \d+;\d+;\d+\|\d+;\d+;(\d+)
                          -> 0
                          
                          \d+;\d+;\d+\|\d+;\d+;\d+;(\d+)
                          -> 17107
                          
                          \d+;\d+;\d+\|\d+;\d+;\d+;\d+;(\d+)
                          -> 0
                          
                          \d+;\d+;\d+\|\d+;\d+;\d+;\d+;\d+;(\d+)
                          -> 0
                          

                          Oder für Dein anderes Beispiel:

                          m[mi++]="04.02.17 12:50:00|462;0;3636|665;463;258;3218;405;406"

                          \d+;
                          -> 462
                          
                          \d+;(\d+)
                          -> 0
                          
                          \d+;\d+;(\d+)
                          -> 3636
                          
                          \d+;\d+;\d+\|(\d+)
                          -> 665
                          
                          \d+;\d+;\d+\|\d+;(\d+)
                          -> 463
                          
                          \d+;\d+;\d+\|\d+;\d+;(\d+)
                          -> 258
                          
                          \d+;\d+;\d+\|\d+;\d+;\d+;(\d+)
                          -> 3218
                          
                          \d+;\d+;\d+\|\d+;\d+;\d+;\d+;(\d+)
                          -> 405
                          
                          \d+;\d+;\d+\|\d+;\d+;\d+;\d+;\d+;(\d+)
                          -> 406
                          
                          

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

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

                            @ralalla:

                            Würde auch gerne den Parser nutzen um den Wasserstand eines Flusses auszulesen.

                            Z. B. von dieser URL http://www.hochwasser-rlp.de/hoechststa … l/BETZDORF

                            den Wasserstand der unter der Grafik hinter : letzter Messwert angezeigt wird.

                            Mit der Parser Testseite komme ich gar nicht klar sonst hätte ich da schon probiert. `

                            Nur die cm?

                            Mit dem Parser-Adapter erhaltene Objekte:

                            327_hochwasser_objekte.jpg

                            Einstellungen im Parser Adapter:

                            327_hochwasser_einstellungen.jpg

                            RegEx 1:

                            Letzter Messwert: **(.+Uhr)**
                            ```` **RegEx 2:
                            

                            (\d+) cm

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

                            1 Antwort Letzte Antwort
                            0
                            • S Offline
                              S Offline
                              stoepselinho
                              schrieb am zuletzt editiert von
                              #25

                              super danke

                              1 Antwort Letzte Antwort
                              0
                              • D Offline
                                D Offline
                                Dice19
                                schrieb am zuletzt editiert von
                                #26

                                HI,

                                könnte mir jemand bei der Hochwasser Anzeige helfen.

                                Habe die Daten soweit übernommen und eingetragen.

                                Habe folgende Seite:

                                https://www.pegelonline.wsv.de/webservi … ht=einzeln

                                oder

                                https://www.pegelonline.wsv.de/gast/sta ... r=48800108

                                Nur bei mir zeigt er null und null cm an.

                                Habe von ralalla mal den link zum testen reinkopiert, da klappt es.

                                Jemand eine Idee wie es mit meiner Seite klappen kann?

                                Danke

                                Tobias

                                1 Antwort Letzte Antwort
                                0
                                • frankjokeF Offline
                                  frankjokeF Offline
                                  frankjoke
                                  schrieb am zuletzt editiert von
                                  #27

                                  Hallo mitsamt!

                                  Der Systeminfo-Adapter kann das und noch viel mehr! Er kann Webseiten laden und mittels Text, RegExp oder jQuery bearbeiten!

                                  Frank,

                                  NUC's, VM's und Raspi's unter Raspian, Ubuntu und Debian zum Testen.
                                  Adapter die ich selbst beigesteuert habe: BMW, broadlink2, radar2, systeminfo, km200, xs1 und einige im Anmarsch!

                                  1 Antwort Letzte Antwort
                                  0
                                  • R Offline
                                    R Offline
                                    ralalla
                                    schrieb am zuletzt editiert von
                                    #28

                                    Danke ruhr70, so funktioniert es. (Besser später als nie bendanken ;-) )

                                    ioBroker auf Intel NUC mit Proxmox / PiVCCU auf Pi3

                                    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

                                    515

                                    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