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. Parser Adapter liefert kein Ergebniss

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.5k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Parser Adapter liefert kein Ergebniss

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
44 Beiträge 4 Kommentatoren 2.5k Aufrufe 3 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.
  • HomoranH Homoran

    @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

    Also 4 X [^>]

    jepp, aber mit zusätzlichem + für beliebig viele Zeichen, die nicht > sind und dann ein >, da dieses Zeichen ja im Befehl davor ausgeschlossen ist

    die roten Markierungen betreffen aber die schließende Spitze Klammer, oder?

    dirk_1930D Offline
    dirk_1930D Offline
    dirk_1930
    schrieb am zuletzt editiert von
    #30

    @homoran
    ich hatte mich an deiner Sequenz orientiert bis ich dann am p Tag ankomme. Die Farbe sollte nur die Anzahl der Schritte markieren

    HomoranH 1 Antwort Letzte Antwort
    0
    • dirk_1930D dirk_1930

      @homoran
      ich hatte mich an deiner Sequenz orientiert bis ich dann am p Tag ankomme. Die Farbe sollte nur die Anzahl der Schritte markieren

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

      @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

      Die Farbe sollte nur die Anzahl der Schritte markieren

      dann passt es

      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 -

      dirk_1930D 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

        Die Farbe sollte nur die Anzahl der Schritte markieren

        dann passt es

        dirk_1930D Offline
        dirk_1930D Offline
        dirk_1930
        schrieb am zuletzt editiert von
        #32

        @homoran
        Ich hoffe ich nerve nicht...

        Soweit konnte ich bisher mehrere zusätzliche Werte auslesen. Jetzt scheitere ich erneut an folgendem...

        <div class="times-rise-set">
        <div title="Sonnenaufgang">
        <span role="img" aria-label="Sonnenaufgang">▲</span> 06:55</div>
        <div title="Sonnenuntergang">
        <span role="img" aria-label="Sonnenuntergang">▼</span> 18:27</div>
        </div>
        </div>
        <div class="moon">
        <div class="moon-icon" title="Erstes Viertel (90.7°)">
        

        Ich möchte die Werte für Sonnenaufgang, -untergang und Mondphase auslesen.

        Mit dem Befehl

        aria-label="Sonnenaufgang">+[^>]+[^>]>+[^>]([\w\W]+)
        

        komme ich bis hinter das schließende span Tag, allerdings schaffe ich es nicht nur die 06:55 auszuwählen.

        HomoranH OliverIOO 2 Antworten Letzte Antwort
        0
        • dirk_1930D dirk_1930

          @homoran
          Ich hoffe ich nerve nicht...

          Soweit konnte ich bisher mehrere zusätzliche Werte auslesen. Jetzt scheitere ich erneut an folgendem...

          <div class="times-rise-set">
          <div title="Sonnenaufgang">
          <span role="img" aria-label="Sonnenaufgang">▲</span> 06:55</div>
          <div title="Sonnenuntergang">
          <span role="img" aria-label="Sonnenuntergang">▼</span> 18:27</div>
          </div>
          </div>
          <div class="moon">
          <div class="moon-icon" title="Erstes Viertel (90.7°)">
          

          Ich möchte die Werte für Sonnenaufgang, -untergang und Mondphase auslesen.

          Mit dem Befehl

          aria-label="Sonnenaufgang">+[^>]+[^>]>+[^>]([\w\W]+)
          

          komme ich bis hinter das schließende span Tag, allerdings schaffe ich es nicht nur die 06:55 auszuwählen.

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

          @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

          Ich hoffe ich nerve nicht...

          nööö, eigentlich nicht, habe nur gerade alles gelöscht :-(

          @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

          Ich möchte die Werte für Sonnenaufgang, -untergang und Mondphase auslesen.

          sollte bei dir in den Objekten stehen. Habe es gerade versucht zu finden und nur bei Shuttercontrol gefunden :-(

          stay tuned

          naufgang[^n]+n> ([\d:]+)

          nuntergang[^n]+n> ([\d:]+)

          Was genau wolltest du mit deinem RegEx erreichen?

          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 -

          dirk_1930D 2 Antworten Letzte Antwort
          0
          • HomoranH Homoran

            @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

            Ich hoffe ich nerve nicht...

            nööö, eigentlich nicht, habe nur gerade alles gelöscht :-(

            @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

            Ich möchte die Werte für Sonnenaufgang, -untergang und Mondphase auslesen.

            sollte bei dir in den Objekten stehen. Habe es gerade versucht zu finden und nur bei Shuttercontrol gefunden :-(

            stay tuned

            naufgang[^n]+n> ([\d:]+)

            nuntergang[^n]+n> ([\d:]+)

            Was genau wolltest du mit deinem RegEx erreichen?

            dirk_1930D Offline
            dirk_1930D Offline
            dirk_1930
            schrieb am zuletzt editiert von
            #34

            @homoran

            habs hinbekommen

            aria-label="Sonnenaufgang">+[^>]+[^>]>+[^>]([^<]+)
            

            ohh mann :face_with_head_bandage:

            HomoranH 1 Antwort Letzte Antwort
            0
            • dirk_1930D dirk_1930

              @homoran
              Ich hoffe ich nerve nicht...

              Soweit konnte ich bisher mehrere zusätzliche Werte auslesen. Jetzt scheitere ich erneut an folgendem...

              <div class="times-rise-set">
              <div title="Sonnenaufgang">
              <span role="img" aria-label="Sonnenaufgang">▲</span> 06:55</div>
              <div title="Sonnenuntergang">
              <span role="img" aria-label="Sonnenuntergang">▼</span> 18:27</div>
              </div>
              </div>
              <div class="moon">
              <div class="moon-icon" title="Erstes Viertel (90.7°)">
              

              Ich möchte die Werte für Sonnenaufgang, -untergang und Mondphase auslesen.

              Mit dem Befehl

              aria-label="Sonnenaufgang">+[^>]+[^>]>+[^>]([\w\W]+)
              

              komme ich bis hinter das schließende span Tag, allerdings schaffe ich es nicht nur die 06:55 auszuwählen.

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

              der doppelpunkt ist kein \w zeichen
              ein endetag zeichen und ein leerzeichen steht da auch noch
              und ein plus als multiplier war zu viel. hat zwar nicht geschadet, da das in html nie vorkommen kann

              aria-label="Sonnenaufgang">[^>]+>\s([\w\:]+)
              

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

              1 Antwort Letzte Antwort
              0
              • HomoranH Homoran

                @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

                Ich hoffe ich nerve nicht...

                nööö, eigentlich nicht, habe nur gerade alles gelöscht :-(

                @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

                Ich möchte die Werte für Sonnenaufgang, -untergang und Mondphase auslesen.

                sollte bei dir in den Objekten stehen. Habe es gerade versucht zu finden und nur bei Shuttercontrol gefunden :-(

                stay tuned

                naufgang[^n]+n> ([\d:]+)

                nuntergang[^n]+n> ([\d:]+)

                Was genau wolltest du mit deinem RegEx erreichen?

                dirk_1930D Offline
                dirk_1930D Offline
                dirk_1930
                schrieb am zuletzt editiert von
                #36

                @homoran said in Parser Adapter liefert kein Ergebniss:

                @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

                Ich hoffe ich nerve nicht...

                nööö, eigentlich nicht, habe nur gerade alles gelöscht :-(

                @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

                Ich möchte die Werte für Sonnenaufgang, -untergang und Mondphase auslesen.

                sollte bei dir in den Objekten stehen. Habe es gerade versucht zu finden und nur bei Shuttercontrol gefunden :-(

                stay tuned

                naufgang[^n]+n> ([\d:]+)

                nuntergang[^n]+n> ([\d:]+)

                Was genau wolltest du mit deinem RegEx erreichen?

                Ich nutze die Meteoblue API und da fehlen halt noch ein paar zusätzliche Datenpunkte. Ich hatte, bzw. habe den Ehrgeiz mich da durchzuwühlen.
                Meine Kenntnisse in HTML und JS sind noch nicht so dolle, aber dank Eurer tollen Hilfe, komme ich immer etwas weiter :+1:

                1 Antwort Letzte Antwort
                0
                • dirk_1930D dirk_1930

                  @homoran

                  habs hinbekommen

                  aria-label="Sonnenaufgang">+[^>]+[^>]>+[^>]([^<]+)
                  

                  ohh mann :face_with_head_bandage:

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

                  @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

                  habs hinbekommen

                  hab es oben editiert!
                  Ich persönlich mache es immer so kurz und eindeutig wie möglich
                  Der Sprung zu den > ist hier aufwändiger. Ich suche dann immer nach dem dichtesten eindeutigen Zeichen am Suchergebnis, hier das n von span
                  Dann hast du mit dem + hinter Sonnenaufgang"> nichts was sich vervielfältigen kann
                  Auch die Word/NoWord Befehle sind nicht eindeutig, es handelt sich nur um Ziffern \d und den Doppelpunkt

                  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 -

                  dirk_1930D 1 Antwort Letzte Antwort
                  0
                  • HomoranH Homoran

                    @dirk_1930 sagte in Parser Adapter liefert kein Ergebniss:

                    habs hinbekommen

                    hab es oben editiert!
                    Ich persönlich mache es immer so kurz und eindeutig wie möglich
                    Der Sprung zu den > ist hier aufwändiger. Ich suche dann immer nach dem dichtesten eindeutigen Zeichen am Suchergebnis, hier das n von span
                    Dann hast du mit dem + hinter Sonnenaufgang"> nichts was sich vervielfältigen kann
                    Auch die Word/NoWord Befehle sind nicht eindeutig, es handelt sich nur um Ziffern \d und den Doppelpunkt

                    dirk_1930D Offline
                    dirk_1930D Offline
                    dirk_1930
                    schrieb am zuletzt editiert von
                    #38

                    @liv-in-sky

                    Du hattest in einem vorherigen Post eine Lösung in cheerio geschrieben.
                    Würden meine daten sich auf diese Weise auch auslesen lassen, bzw. kann ich anhand des vollständigen XPath darauf zugreifen?

                    liv-in-skyL 1 Antwort Letzte Antwort
                    0
                    • dirk_1930D dirk_1930

                      @liv-in-sky

                      Du hattest in einem vorherigen Post eine Lösung in cheerio geschrieben.
                      Würden meine daten sich auf diese Weise auch auslesen lassen, bzw. kann ich anhand des vollständigen XPath darauf zugreifen?

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #39

                      @dirk_1930

                      teste mal dieses script - wird beim start einmal aufgerufen - du musst axios und cheerio im javascript instanz setting unter zusätzliche npm module einfügen

                      im log siehst du dann alle möglichen ausgaben

                      das ist die ausgabe eines arrays , das einfach hintereinander ausgegeben wird

                      wenn du mir dann sagst, was du genau haben willst - kann ich MORGEN das script weitermachen

                      
                      const cheerio = require('cheerio');
                      const request = require('request');
                      const axios=require('axios');
                      let jsonArr;
                      let myDPunkt="0_userdata.0.CONTROL-OWN.TABELLEN.Vilsbiburg"
                      
                      let mySchedule1="  33 */8 * * * "; // alle 8 stunden bei minute 33
                      holeDaten();
                      // schedule(mySchedule1,  function () {
                       let myVarVar=mathRandomInt(10, 300);
                      // log("startet ");
                       setTimeout(function() {
                         //  log("jetzt "+myVarVar);
                           holeDaten();
                      
                       }, myVarVar*1000);
                      // });
                      
                      
                      function mathRandomInt(a, b) {
                       if (a > b) {
                         // Swap a and b to ensure a is smaller.
                         var c = a;
                         a = b;
                         b = c;
                       }
                       return Math.floor(Math.random() * (b - a + 1) + a);
                      }
                      
                      async function holeDaten() { 
                         log("jetzt")
                         await axios.get(encodeURI('https://www.meteoblue.com/de/wetter/woche/köln_deutschland_2886242'), {
                                         headers: { 'User-Agent':`Mozilla/5.0 (X11; CrOS x86_64 8172.45.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.64 Safari/537.36` }
                      }).then((result) => {
                              // log(result.data);log(result)
                                  const $ = cheerio.load(result.data)
                                                    const list5 = $('*')
                                                                       .find('.col-12')                 //find("[class*=re]")  //find('.table_wert_1a')
                                                                       .toArray()
                                                                       .map(element => { return $(element).text()}); log(list5.length +"---"+list5)
                                                                       for (let z=0;z<list5.length;z++){log(list5[z])}
                      
                                                    let dayArr=['Mo','Di','Mi','Do','Fr','Sa','So'];
                                                     jsonArr=[];
                                                     let i=0
                                            //        for(let i=0;i<5;i++) {//log(list5[i])
                                                       
                                                                                                        jsonArr.push({
                                                                                                            "temp":    list5[i],
                                                                                                            "min_temp_heute":  list5[i+1],
                                                                                                            "max_temp_heute": list5[i+2],
                                                                                                            "luftfeucht": list5[i+3],
                                                                                                            "min_luftfeucht_heute": list5[i+4]
                                                                                                        })
                            
                      //} 
                      //log(JSON.stringify(jsonArr))   //hier in dp schreiben
                      //log("jetzt "+myVarVar);
                      setState(myDPunkt,JSON.stringify(jsonArr))
                      
                             }).catch((error) => {
                                 return error;
                             })}
                      
                      
                      
                      
                      

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      dirk_1930D 1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @dirk_1930

                        teste mal dieses script - wird beim start einmal aufgerufen - du musst axios und cheerio im javascript instanz setting unter zusätzliche npm module einfügen

                        im log siehst du dann alle möglichen ausgaben

                        das ist die ausgabe eines arrays , das einfach hintereinander ausgegeben wird

                        wenn du mir dann sagst, was du genau haben willst - kann ich MORGEN das script weitermachen

                        
                        const cheerio = require('cheerio');
                        const request = require('request');
                        const axios=require('axios');
                        let jsonArr;
                        let myDPunkt="0_userdata.0.CONTROL-OWN.TABELLEN.Vilsbiburg"
                        
                        let mySchedule1="  33 */8 * * * "; // alle 8 stunden bei minute 33
                        holeDaten();
                        // schedule(mySchedule1,  function () {
                         let myVarVar=mathRandomInt(10, 300);
                        // log("startet ");
                         setTimeout(function() {
                           //  log("jetzt "+myVarVar);
                             holeDaten();
                        
                         }, myVarVar*1000);
                        // });
                        
                        
                        function mathRandomInt(a, b) {
                         if (a > b) {
                           // Swap a and b to ensure a is smaller.
                           var c = a;
                           a = b;
                           b = c;
                         }
                         return Math.floor(Math.random() * (b - a + 1) + a);
                        }
                        
                        async function holeDaten() { 
                           log("jetzt")
                           await axios.get(encodeURI('https://www.meteoblue.com/de/wetter/woche/köln_deutschland_2886242'), {
                                           headers: { 'User-Agent':`Mozilla/5.0 (X11; CrOS x86_64 8172.45.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.64 Safari/537.36` }
                        }).then((result) => {
                                // log(result.data);log(result)
                                    const $ = cheerio.load(result.data)
                                                      const list5 = $('*')
                                                                         .find('.col-12')                 //find("[class*=re]")  //find('.table_wert_1a')
                                                                         .toArray()
                                                                         .map(element => { return $(element).text()}); log(list5.length +"---"+list5)
                                                                         for (let z=0;z<list5.length;z++){log(list5[z])}
                        
                                                      let dayArr=['Mo','Di','Mi','Do','Fr','Sa','So'];
                                                       jsonArr=[];
                                                       let i=0
                                              //        for(let i=0;i<5;i++) {//log(list5[i])
                                                         
                                                                                                          jsonArr.push({
                                                                                                              "temp":    list5[i],
                                                                                                              "min_temp_heute":  list5[i+1],
                                                                                                              "max_temp_heute": list5[i+2],
                                                                                                              "luftfeucht": list5[i+3],
                                                                                                              "min_luftfeucht_heute": list5[i+4]
                                                                                                          })
                              
                        //} 
                        //log(JSON.stringify(jsonArr))   //hier in dp schreiben
                        //log("jetzt "+myVarVar);
                        setState(myDPunkt,JSON.stringify(jsonArr))
                        
                               }).catch((error) => {
                                   return error;
                               })}
                        
                        
                        
                        
                        

                        dirk_1930D Offline
                        dirk_1930D Offline
                        dirk_1930
                        schrieb am zuletzt editiert von
                        #40

                        @liv-in-sky
                        Danke für dein Angebot das Script anzupassen.

                        Ich habe einen Screenshot von den Log gemacht und die gewünschten Daten markiert. Hoffe das ist OK so...
                        Zusätzlich habe ich einzelne Werte mit gelb unterstrichen. Können die jeweils einzeln extrahiert werden?

                        Freue mich auf deinen Vorschlag :-)

                        cheerio_1.JPG

                        liv-in-skyL 1 Antwort Letzte Antwort
                        0
                        • dirk_1930D dirk_1930

                          @liv-in-sky
                          Danke für dein Angebot das Script anzupassen.

                          Ich habe einen Screenshot von den Log gemacht und die gewünschten Daten markiert. Hoffe das ist OK so...
                          Zusätzlich habe ich einzelne Werte mit gelb unterstrichen. Können die jeweils einzeln extrahiert werden?

                          Freue mich auf deinen Vorschlag :-)

                          cheerio_1.JPG

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          schrieb am zuletzt editiert von
                          #41

                          @dirk_1930

                          probiere mal das - datenpunkte unter 0_userdata - werden angelegt

                          dann müssen wir nur noch wegen dem abfrageinterval was machen - wie oft willst du das abfragen - nicht zu oft, manche seiten mögen das nicht, wenn dauernd solche fragen kommen

                          
                          const cheerio = require('cheerio');
                          const request = require('request');
                          const axios=require('axios');
                          let jsonArr;
                          let myDPunkt="0_userdata.0.CONTROL-OWN.TABELLEN.Vilsbiburg"
                          
                          let mySchedule1="  33 */8 * * * "; // alle 8 stunden bei minute 33
                          
                          doStuff()
                          holeDaten();
                          // schedule(mySchedule1,  function () {
                           let myVarVar=mathRandomInt(10, 300);
                          // log("startet ");
                           setTimeout(function() {
                             //  log("jetzt "+myVarVar);
                               holeDaten();
                          
                           }, myVarVar*1000);
                          // });
                          
                          
                          function mathRandomInt(a, b) {
                           if (a > b) {
                             // Swap a and b to ensure a is smaller.
                             var c = a;
                             a = b;
                             b = c;
                           }
                           return Math.floor(Math.random() * (b - a + 1) + a);
                          }
                          
                          async function holeDaten() { 
                             log("jetzt")
                             await axios.get(encodeURI('https://www.meteoblue.com/de/wetter/woche/köln_deutschland_2886242'), {
                                             headers: { 'User-Agent':`Mozilla/5.0 (X11; CrOS x86_64 8172.45.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.64 Safari/537.36` }
                          }).then((result) => {
                                  // log(result.data);log(result)
                                      const $ = cheerio.load(result.data)
                                                        const list5 = $('*')
                                                                           .find('.col-12')                 //find("[class*=re]")  //find('.table_wert_1a')
                                                                           .toArray()
                                                                           .map(element => { return $(element).text()}); //log(list5.length +"---"+list5)
                                                                         //  for (let z=0;z<list5.length;z++){log(list5[z])}
                          
                                                  //  log(list5[5])
                                
                          //} 
                          //log(JSON.stringify(jsonArr))   //hier in dp schreiben
                          //log("jetzt "+myVarVar);
                          //log(list5[5].replace(/ /gm,'').replace(/\n/gm,'').replace(/▲/g,'').replace(/▼/g,''))
                          let helpingHand=list5[5].replace(/ /gm,'').replace(/\n/gm,'').replace(/▲/g,'').replace(/▼/g,'')
                          setState("0_userdata.0.KoelnWetter.BerichtLang",list5[10])
                          setState("0_userdata.0.KoelnWetter.BerichtKurz",list5[4].replace('Wetterbericht für Köln ',''))
                          setState("0_userdata.0.KoelnWetter.UV2Start",helpingHand.replace(/^.*?([0-9][0-9]:[0-9][0-9]).*/,"$1"))
                          setState("0_userdata.0.KoelnWetter.UV2End",helpingHand.replace(/^.*?[0-9][0-9]:[0-9][0-9]([0-9][0-9]:[0-9][0-9]).*/gm,'$1')) //^UV2▲[0-9][0-9]:[0-9][0-9]▼([0-9][0-9]:[0-9][0-9])
                          setState("0_userdata.0.KoelnWetter.Mond2Start",helpingHand.replace(/^.*?\)([0-9][0-9]:[0-9][0-9]).*/gm,'$1'))
                          setState("0_userdata.0.KoelnWetter.Mond2End",helpingHand.replace(/^.*?\)[0-9][0-9]:[0-9][0-9]([0-9][0-9]:[0-9][0-9]).*/gm,'$1'))
                          setState("0_userdata.0.KoelnWetter.MondGrad",helpingHand.replace(/^.*?\((.*?)\).*/gm,'$1'))
                          
                                 }).catch((error) => {
                                     return error;
                                 })}
                          
                          async function doStuff() {
                            
                             
                              if (!(await existsStateAsync("0_userdata.0.KoelnWetter.BerichtLang"))) {
                                 await createStateAsync("0_userdata.0.KoelnWetter.BerichtLang",{type: "string", name: "Bericht ausführlich", role: "value", read: true, write: true, } ); }
                              if (!(await existsStateAsync("0_userdata.0.KoelnWetter.BerichtKurz"))) {
                                 await createStateAsync("0_userdata.0.KoelnWetter.BerichtKurz",{type: "string", name: "Bericht ausführlich", role: "value", read: true, write: true, } ); }
                              if (!(await existsStateAsync("0_userdata.0.KoelnWetter.UV2Start"))) {
                                 await createStateAsync("0_userdata.0.KoelnWetter.UV2Start",{type: "string", name: "UV2Start", role: "value", read: true, write: true, } ); } 
                              if (!(await existsStateAsync("0_userdata.0.KoelnWetter.UV2End"))) {
                                 await createStateAsync("0_userdata.0.KoelnWetter.UV2End",{type: "string", name: "UV2End", role: "value", read: true, write: true, } ); }           
                              if (!(await existsStateAsync("0_userdata.0.KoelnWetter.Mond2End"))) {
                                 await createStateAsync("0_userdata.0.KoelnWetter.Mond2End",{type: "string", name: "Mond2End", role: "value", read: true, write: true, } ); }
                              if (!(await existsStateAsync("0_userdata.0.KoelnWetter.Mond2Start"))) {
                                 await createStateAsync("0_userdata.0.KoelnWetter.Mond2Start",{type: "string", name: "Mond2Start", role: "value", read: true, write: true, } ); }  
                              if (!(await existsStateAsync("0_userdata.0.KoelnWetter.MondGrad"))) {
                                 await createStateAsync("0_userdata.0.KoelnWetter.MondGrad",{type: "string", name: "MondGrad", role: "value", read: true, write: true, } ); }      
                          
                          
                          
                          }
                          
                          ![Image 2.png](/assets/uploads/files/1646986580738-image-2.png) 
                          
                          
                          
                          
                          
                          
                          

                          Image 2.png

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          dirk_1930D 1 Antwort Letzte Antwort
                          0
                          • liv-in-skyL liv-in-sky

                            @dirk_1930

                            probiere mal das - datenpunkte unter 0_userdata - werden angelegt

                            dann müssen wir nur noch wegen dem abfrageinterval was machen - wie oft willst du das abfragen - nicht zu oft, manche seiten mögen das nicht, wenn dauernd solche fragen kommen

                            
                            const cheerio = require('cheerio');
                            const request = require('request');
                            const axios=require('axios');
                            let jsonArr;
                            let myDPunkt="0_userdata.0.CONTROL-OWN.TABELLEN.Vilsbiburg"
                            
                            let mySchedule1="  33 */8 * * * "; // alle 8 stunden bei minute 33
                            
                            doStuff()
                            holeDaten();
                            // schedule(mySchedule1,  function () {
                             let myVarVar=mathRandomInt(10, 300);
                            // log("startet ");
                             setTimeout(function() {
                               //  log("jetzt "+myVarVar);
                                 holeDaten();
                            
                             }, myVarVar*1000);
                            // });
                            
                            
                            function mathRandomInt(a, b) {
                             if (a > b) {
                               // Swap a and b to ensure a is smaller.
                               var c = a;
                               a = b;
                               b = c;
                             }
                             return Math.floor(Math.random() * (b - a + 1) + a);
                            }
                            
                            async function holeDaten() { 
                               log("jetzt")
                               await axios.get(encodeURI('https://www.meteoblue.com/de/wetter/woche/köln_deutschland_2886242'), {
                                               headers: { 'User-Agent':`Mozilla/5.0 (X11; CrOS x86_64 8172.45.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.64 Safari/537.36` }
                            }).then((result) => {
                                    // log(result.data);log(result)
                                        const $ = cheerio.load(result.data)
                                                          const list5 = $('*')
                                                                             .find('.col-12')                 //find("[class*=re]")  //find('.table_wert_1a')
                                                                             .toArray()
                                                                             .map(element => { return $(element).text()}); //log(list5.length +"---"+list5)
                                                                           //  for (let z=0;z<list5.length;z++){log(list5[z])}
                            
                                                    //  log(list5[5])
                                  
                            //} 
                            //log(JSON.stringify(jsonArr))   //hier in dp schreiben
                            //log("jetzt "+myVarVar);
                            //log(list5[5].replace(/ /gm,'').replace(/\n/gm,'').replace(/▲/g,'').replace(/▼/g,''))
                            let helpingHand=list5[5].replace(/ /gm,'').replace(/\n/gm,'').replace(/▲/g,'').replace(/▼/g,'')
                            setState("0_userdata.0.KoelnWetter.BerichtLang",list5[10])
                            setState("0_userdata.0.KoelnWetter.BerichtKurz",list5[4].replace('Wetterbericht für Köln ',''))
                            setState("0_userdata.0.KoelnWetter.UV2Start",helpingHand.replace(/^.*?([0-9][0-9]:[0-9][0-9]).*/,"$1"))
                            setState("0_userdata.0.KoelnWetter.UV2End",helpingHand.replace(/^.*?[0-9][0-9]:[0-9][0-9]([0-9][0-9]:[0-9][0-9]).*/gm,'$1')) //^UV2▲[0-9][0-9]:[0-9][0-9]▼([0-9][0-9]:[0-9][0-9])
                            setState("0_userdata.0.KoelnWetter.Mond2Start",helpingHand.replace(/^.*?\)([0-9][0-9]:[0-9][0-9]).*/gm,'$1'))
                            setState("0_userdata.0.KoelnWetter.Mond2End",helpingHand.replace(/^.*?\)[0-9][0-9]:[0-9][0-9]([0-9][0-9]:[0-9][0-9]).*/gm,'$1'))
                            setState("0_userdata.0.KoelnWetter.MondGrad",helpingHand.replace(/^.*?\((.*?)\).*/gm,'$1'))
                            
                                   }).catch((error) => {
                                       return error;
                                   })}
                            
                            async function doStuff() {
                              
                               
                                if (!(await existsStateAsync("0_userdata.0.KoelnWetter.BerichtLang"))) {
                                   await createStateAsync("0_userdata.0.KoelnWetter.BerichtLang",{type: "string", name: "Bericht ausführlich", role: "value", read: true, write: true, } ); }
                                if (!(await existsStateAsync("0_userdata.0.KoelnWetter.BerichtKurz"))) {
                                   await createStateAsync("0_userdata.0.KoelnWetter.BerichtKurz",{type: "string", name: "Bericht ausführlich", role: "value", read: true, write: true, } ); }
                                if (!(await existsStateAsync("0_userdata.0.KoelnWetter.UV2Start"))) {
                                   await createStateAsync("0_userdata.0.KoelnWetter.UV2Start",{type: "string", name: "UV2Start", role: "value", read: true, write: true, } ); } 
                                if (!(await existsStateAsync("0_userdata.0.KoelnWetter.UV2End"))) {
                                   await createStateAsync("0_userdata.0.KoelnWetter.UV2End",{type: "string", name: "UV2End", role: "value", read: true, write: true, } ); }           
                                if (!(await existsStateAsync("0_userdata.0.KoelnWetter.Mond2End"))) {
                                   await createStateAsync("0_userdata.0.KoelnWetter.Mond2End",{type: "string", name: "Mond2End", role: "value", read: true, write: true, } ); }
                                if (!(await existsStateAsync("0_userdata.0.KoelnWetter.Mond2Start"))) {
                                   await createStateAsync("0_userdata.0.KoelnWetter.Mond2Start",{type: "string", name: "Mond2Start", role: "value", read: true, write: true, } ); }  
                                if (!(await existsStateAsync("0_userdata.0.KoelnWetter.MondGrad"))) {
                                   await createStateAsync("0_userdata.0.KoelnWetter.MondGrad",{type: "string", name: "MondGrad", role: "value", read: true, write: true, } ); }      
                            
                            
                            
                            }
                            
                            ![Image 2.png](/assets/uploads/files/1646986580738-image-2.png) 
                            
                            
                            
                            
                            
                            
                            

                            Image 2.png

                            dirk_1930D Offline
                            dirk_1930D Offline
                            dirk_1930
                            schrieb am zuletzt editiert von dirk_1930
                            #42

                            @liv-in-sky
                            Das klappt... Habe noch in Zeile 53 - list5[11] gesetzt...

                            Ich habe noch ein paar technische Fragen, damit ich etwas dazu lerne ;-)
                            Du hast in Zeile 52 Zeichen ersetzt. Wie hast du vorher gesehen, was im Original steht - damit die Ersetzung ersichtlich ist?
                            Zwischen Zeile 57 und 61 ergänzt du am ende "$1" bzw. gm, "$1". Was bedeutet das?

                            Das Abfrageintervall sollte alle 6 Stunden sein.

                            liv-in-skyL 1 Antwort Letzte Antwort
                            0
                            • dirk_1930D dirk_1930

                              @liv-in-sky
                              Das klappt... Habe noch in Zeile 53 - list5[11] gesetzt...

                              Ich habe noch ein paar technische Fragen, damit ich etwas dazu lerne ;-)
                              Du hast in Zeile 52 Zeichen ersetzt. Wie hast du vorher gesehen, was im Original steht - damit die Ersetzung ersichtlich ist?
                              Zwischen Zeile 57 und 61 ergänzt du am ende "$1" bzw. gm, "$1". Was bedeutet das?

                              Das Abfrageintervall sollte alle 6 Stunden sein.

                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              schrieb am zuletzt editiert von
                              #43

                              @dirk_1930

                              $1 bedeutet - das du in dem regex etwas in (...) setzt und das dann eine variable ist - die erste klammer ist $1 - bzw das gesuchte

                              bei regex text(..)text(....)text hast du dann 2 variablen - also $1 und $2

                              irgendwie sieht man das nicht richtig - was da ankommt - aber aus erfahrung nehme ich meistens die \n (neue zeile) raus . hier , bei dir, habe ich einfach alle leerzeichen eliminiert - damit ich mal eine zeile habe , damit ist es einfacher für mich, alles zu finden

                              script alle 6 studen:

                              
                              const cheerio = require('cheerio');
                              const request = require('request');
                              const axios=require('axios');
                              let jsonArr;
                              let myDPunkt="0_userdata.0.CONTROL-OWN.TABELLEN.Vilsbiburg"
                              
                              let mySchedule1="  3 */6 * * * "; // alle 6 stunden bei minute 3
                              
                              doStuff()
                              holeDaten();
                               schedule(mySchedule1,  function () {
                               let myVarVar=mathRandomInt(1, 30);
                              // log("startet ");
                               setTimeout(function() {          // variert die sekunden der abfrage, damit nicht immer die selbe ip zur absolut selben zeit eine abfrage stellt ))
                                //   log("jetzt "+myVarVar);
                                   holeDaten();
                              
                               }, myVarVar*1000);
                               });
                              
                              
                              function mathRandomInt(a, b) {
                               if (a > b) {
                                 // Swap a and b to ensure a is smaller.
                                 var c = a;
                                 a = b;
                                 b = c;
                               }
                               return Math.floor(Math.random() * (b - a + 1) + a);
                              }
                              
                              async function holeDaten() { 
                                 log("Hole Wetterdaten aus Koeln")
                                 await axios.get(encodeURI('https://www.meteoblue.com/de/wetter/woche/köln_deutschland_2886242'), {
                                                 headers: { 'User-Agent':`Mozilla/5.0 (X11; CrOS x86_64 8172.45.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.64 Safari/537.36` }
                              }).then((result) => {
                                      // log(result.data);log(result)
                                          const $ = cheerio.load(result.data)
                                                            const list5 = $('*')
                                                                               .find('.col-12')                 //find("[class*=re]")  //find('.table_wert_1a')
                                                                               .toArray()
                                                                               .map(element => { return $(element).text()}); //log(list5.length +"---"+list5)
                                                                             //  for (let z=0;z<list5.length;z++){log(list5[z])}
                              
                                                      //  log(list5[5])
                                    
                              //} 
                              //log(JSON.stringify(jsonArr))   //hier in dp schreiben
                              //log("jetzt "+myVarVar);
                              //log(list5[5].replace(/ /gm,'').replace(/\n/gm,'').replace(/▲/g,'').replace(/▼/g,''))
                              let helpingHand=list5[5].replace(/ /gm,'').replace(/\n/gm,'').replace(/▲/g,'').replace(/▼/g,'')
                              setState("0_userdata.0.KoelnWetter.BerichtLang",list5[10])
                              setState("0_userdata.0.KoelnWetter.BerichtKurz",list5[4].replace('Wetterbericht für Köln ',''))
                              setState("0_userdata.0.KoelnWetter.UV2Start",helpingHand.replace(/^.*?([0-9][0-9]:[0-9][0-9]).*/,"$1"))
                              setState("0_userdata.0.KoelnWetter.UV2End",helpingHand.replace(/^.*?[0-9][0-9]:[0-9][0-9]([0-9][0-9]:[0-9][0-9]).*/gm,'$1')) //^UV2▲[0-9][0-9]:[0-9][0-9]▼([0-9][0-9]:[0-9][0-9])
                              setState("0_userdata.0.KoelnWetter.Mond2Start",helpingHand.replace(/^.*?\)([0-9][0-9]:[0-9][0-9]).*/gm,'$1'))
                              setState("0_userdata.0.KoelnWetter.Mond2End",helpingHand.replace(/^.*?\)[0-9][0-9]:[0-9][0-9]([0-9][0-9]:[0-9][0-9]).*/gm,'$1'))
                              setState("0_userdata.0.KoelnWetter.MondGrad",helpingHand.replace(/^.*?\((.*?)\).*/gm,'$1'))
                              
                                     }).catch((error) => {
                                         return error;
                                     })}
                              
                              async function doStuff() {
                                
                                 
                                  if (!(await existsStateAsync("0_userdata.0.KoelnWetter.BerichtLang"))) {
                                     await createStateAsync("0_userdata.0.KoelnWetter.BerichtLang",{type: "string", name: "Bericht ausführlich", role: "value", read: true, write: true, } ); }
                                  if (!(await existsStateAsync("0_userdata.0.KoelnWetter.BerichtKurz"))) {
                                     await createStateAsync("0_userdata.0.KoelnWetter.BerichtKurz",{type: "string", name: "Bericht ausführlich", role: "value", read: true, write: true, } ); }
                                  if (!(await existsStateAsync("0_userdata.0.KoelnWetter.UV2Start"))) {
                                     await createStateAsync("0_userdata.0.KoelnWetter.UV2Start",{type: "string", name: "UV2Start", role: "value", read: true, write: true, } ); } 
                                  if (!(await existsStateAsync("0_userdata.0.KoelnWetter.UV2End"))) {
                                     await createStateAsync("0_userdata.0.KoelnWetter.UV2End",{type: "string", name: "UV2End", role: "value", read: true, write: true, } ); }           
                                  if (!(await existsStateAsync("0_userdata.0.KoelnWetter.Mond2End"))) {
                                     await createStateAsync("0_userdata.0.KoelnWetter.Mond2End",{type: "string", name: "Mond2End", role: "value", read: true, write: true, } ); }
                                  if (!(await existsStateAsync("0_userdata.0.KoelnWetter.Mond2Start"))) {
                                     await createStateAsync("0_userdata.0.KoelnWetter.Mond2Start",{type: "string", name: "Mond2Start", role: "value", read: true, write: true, } ); }  
                                  if (!(await existsStateAsync("0_userdata.0.KoelnWetter.MondGrad"))) {
                                     await createStateAsync("0_userdata.0.KoelnWetter.MondGrad",{type: "string", name: "MondGrad", role: "value", read: true, write: true, } ); }      
                              
                              
                              
                              }
                              
                              
                              
                              
                              
                              
                              

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              dirk_1930D 1 Antwort Letzte Antwort
                              0
                              • liv-in-skyL liv-in-sky

                                @dirk_1930

                                $1 bedeutet - das du in dem regex etwas in (...) setzt und das dann eine variable ist - die erste klammer ist $1 - bzw das gesuchte

                                bei regex text(..)text(....)text hast du dann 2 variablen - also $1 und $2

                                irgendwie sieht man das nicht richtig - was da ankommt - aber aus erfahrung nehme ich meistens die \n (neue zeile) raus . hier , bei dir, habe ich einfach alle leerzeichen eliminiert - damit ich mal eine zeile habe , damit ist es einfacher für mich, alles zu finden

                                script alle 6 studen:

                                
                                const cheerio = require('cheerio');
                                const request = require('request');
                                const axios=require('axios');
                                let jsonArr;
                                let myDPunkt="0_userdata.0.CONTROL-OWN.TABELLEN.Vilsbiburg"
                                
                                let mySchedule1="  3 */6 * * * "; // alle 6 stunden bei minute 3
                                
                                doStuff()
                                holeDaten();
                                 schedule(mySchedule1,  function () {
                                 let myVarVar=mathRandomInt(1, 30);
                                // log("startet ");
                                 setTimeout(function() {          // variert die sekunden der abfrage, damit nicht immer die selbe ip zur absolut selben zeit eine abfrage stellt ))
                                  //   log("jetzt "+myVarVar);
                                     holeDaten();
                                
                                 }, myVarVar*1000);
                                 });
                                
                                
                                function mathRandomInt(a, b) {
                                 if (a > b) {
                                   // Swap a and b to ensure a is smaller.
                                   var c = a;
                                   a = b;
                                   b = c;
                                 }
                                 return Math.floor(Math.random() * (b - a + 1) + a);
                                }
                                
                                async function holeDaten() { 
                                   log("Hole Wetterdaten aus Koeln")
                                   await axios.get(encodeURI('https://www.meteoblue.com/de/wetter/woche/köln_deutschland_2886242'), {
                                                   headers: { 'User-Agent':`Mozilla/5.0 (X11; CrOS x86_64 8172.45.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.64 Safari/537.36` }
                                }).then((result) => {
                                        // log(result.data);log(result)
                                            const $ = cheerio.load(result.data)
                                                              const list5 = $('*')
                                                                                 .find('.col-12')                 //find("[class*=re]")  //find('.table_wert_1a')
                                                                                 .toArray()
                                                                                 .map(element => { return $(element).text()}); //log(list5.length +"---"+list5)
                                                                               //  for (let z=0;z<list5.length;z++){log(list5[z])}
                                
                                                        //  log(list5[5])
                                      
                                //} 
                                //log(JSON.stringify(jsonArr))   //hier in dp schreiben
                                //log("jetzt "+myVarVar);
                                //log(list5[5].replace(/ /gm,'').replace(/\n/gm,'').replace(/▲/g,'').replace(/▼/g,''))
                                let helpingHand=list5[5].replace(/ /gm,'').replace(/\n/gm,'').replace(/▲/g,'').replace(/▼/g,'')
                                setState("0_userdata.0.KoelnWetter.BerichtLang",list5[10])
                                setState("0_userdata.0.KoelnWetter.BerichtKurz",list5[4].replace('Wetterbericht für Köln ',''))
                                setState("0_userdata.0.KoelnWetter.UV2Start",helpingHand.replace(/^.*?([0-9][0-9]:[0-9][0-9]).*/,"$1"))
                                setState("0_userdata.0.KoelnWetter.UV2End",helpingHand.replace(/^.*?[0-9][0-9]:[0-9][0-9]([0-9][0-9]:[0-9][0-9]).*/gm,'$1')) //^UV2▲[0-9][0-9]:[0-9][0-9]▼([0-9][0-9]:[0-9][0-9])
                                setState("0_userdata.0.KoelnWetter.Mond2Start",helpingHand.replace(/^.*?\)([0-9][0-9]:[0-9][0-9]).*/gm,'$1'))
                                setState("0_userdata.0.KoelnWetter.Mond2End",helpingHand.replace(/^.*?\)[0-9][0-9]:[0-9][0-9]([0-9][0-9]:[0-9][0-9]).*/gm,'$1'))
                                setState("0_userdata.0.KoelnWetter.MondGrad",helpingHand.replace(/^.*?\((.*?)\).*/gm,'$1'))
                                
                                       }).catch((error) => {
                                           return error;
                                       })}
                                
                                async function doStuff() {
                                  
                                   
                                    if (!(await existsStateAsync("0_userdata.0.KoelnWetter.BerichtLang"))) {
                                       await createStateAsync("0_userdata.0.KoelnWetter.BerichtLang",{type: "string", name: "Bericht ausführlich", role: "value", read: true, write: true, } ); }
                                    if (!(await existsStateAsync("0_userdata.0.KoelnWetter.BerichtKurz"))) {
                                       await createStateAsync("0_userdata.0.KoelnWetter.BerichtKurz",{type: "string", name: "Bericht ausführlich", role: "value", read: true, write: true, } ); }
                                    if (!(await existsStateAsync("0_userdata.0.KoelnWetter.UV2Start"))) {
                                       await createStateAsync("0_userdata.0.KoelnWetter.UV2Start",{type: "string", name: "UV2Start", role: "value", read: true, write: true, } ); } 
                                    if (!(await existsStateAsync("0_userdata.0.KoelnWetter.UV2End"))) {
                                       await createStateAsync("0_userdata.0.KoelnWetter.UV2End",{type: "string", name: "UV2End", role: "value", read: true, write: true, } ); }           
                                    if (!(await existsStateAsync("0_userdata.0.KoelnWetter.Mond2End"))) {
                                       await createStateAsync("0_userdata.0.KoelnWetter.Mond2End",{type: "string", name: "Mond2End", role: "value", read: true, write: true, } ); }
                                    if (!(await existsStateAsync("0_userdata.0.KoelnWetter.Mond2Start"))) {
                                       await createStateAsync("0_userdata.0.KoelnWetter.Mond2Start",{type: "string", name: "Mond2Start", role: "value", read: true, write: true, } ); }  
                                    if (!(await existsStateAsync("0_userdata.0.KoelnWetter.MondGrad"))) {
                                       await createStateAsync("0_userdata.0.KoelnWetter.MondGrad",{type: "string", name: "MondGrad", role: "value", read: true, write: true, } ); }      
                                
                                
                                
                                }
                                
                                
                                
                                
                                
                                
                                

                                dirk_1930D Offline
                                dirk_1930D Offline
                                dirk_1930
                                schrieb am zuletzt editiert von dirk_1930
                                #44

                                @liv-in-sky
                                Sehr cool das ganze mit den regular Expressions. Wenn man einmal verstanden hat, wie die aufgebaut sind ist das ja ganz schön mächtig.
                                Nochmals danke für all eure verschiedenen Lösungsansätze.
                                Werde jetzt mal alleine weiter machen bis zur nächsten Frage… :blush:

                                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

                                682

                                Online

                                32.7k

                                Benutzer

                                82.4k

                                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