Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Wert aus Website auslesen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Wert aus Website auslesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky @David G. last edited by liv-in-sky

      @david-g

      wenn du "cheerio" in das setting des javasript adapters bei zusätlichen nodes eingibst - sollte das script funktionieren

      Image 1.png

      
      const cheerio = require('cheerio');
      const request = require('request');
      
       let mySchedule1="  12 */4 * * * "; // alle 4 stunden bei minute 12
      
        //schedule(mySchedule1,  function () {
      request('https://www.corona-in-zahlen.de/weltweit/deutschland/',(error, response, html)=>{
        if (response.statusCode==200){ //log(html)
                                     const $ = cheerio.load(html)
                                     const list5 = $('*')
                                                        .find('div.h-100 >  div >p >b ')
                                                        .toArray()
                                                        .map(element => { return $(element).text()}); log(list5.length +"---"+list5)
      
                                      log(list5[3])                  
      
                 
      
      
      }});
      
      • für den test ist das schedule auskommentiert
      • ergebnis steht im log
      David G. 1 Reply Last reply Reply Quote 0
      • David G.
        David G. @liv-in-sky last edited by

        @liv-in-sky

        Danke,

        werde ich am Montag testen.
        Hab das We grad keinen Rechner zu.

        Was ist das "cheerio"?

        Oder kann ich das in Blockly als Funktion einbauen?

        Blockly klappt am Handy ganz gut, der Javaeditor nicht so.

        liv-in-sky 3 Replies Last reply Reply Quote 0
        • liv-in-sky
          liv-in-sky @David G. last edited by

          @david-g

          moment- mach dir eins

          1 Reply Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @David G. last edited by

            @david-g

            cheerio ermöglicht dir, dass du die html seite ausliest und die html tags als objekte verarbeitest - dann findet man sich besser zurecht in der html seite

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

              @David-G
              Das Landesamt für Gesundheit NRW bietet seit einigen Tagen außer der Inzidenz auch weitere Kennzahlen an, so wie es anscheinend zukünftig umgesetzt werden wird.

              Neben der 7-Tage inzidenz sind das die Belegung der insgesamt verfügbaren Intensivbetten mit Covid-19 Patienten und der 7 Tage Hospitalisierungsindex der Infizierten.
              https://www.lzg.nrw.de/inf_schutz/corona_meldelage/index.html

              ich lese diese seit ein paar Tagen mit dem parser Adapter aus (2x am Tag reicht vollkommen!!)
              lzg_nrw.png

              Im Moment geht zum Glück die Inzidenz wieder deutlich zurück, nachdem diese (wahrscheinlichdurch Urlaubsrückkehrer) teilweise bei deutlich über 200 lag.

              Ob es solche Kennzahlen auch für ganz Deutschland gibt weiß ich nicht, wobei ich schon mit Landeszahlen nicht zufrieden bin, da die Verteilung der 7-Tage Inzidenz im Land zeitgleich schon zwischen <50 und >250 lag.
              Für die Gefährdungseinschätzung sollte IMHO eine möglichst lokale Auswertung genommen werden

              1 Reply Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @David G. last edited by liv-in-sky

                @david-g

                es sind übrigens alle werte der seite verfügbar - geloggt wird nur der eine
                zum test ist das im moment ohne schedule

                Image 2.png

                <xml xmlns="https://developers.google.com/blockly/xml">
                 <variables>
                   <variable id="{hR#CsV^4Pyvp6Kdo.`;">x</variable>
                   <variable id="t$]iI=~iN`PMfG-lj`iz">result</variable>
                 </variables>
                 <block type="procedures_defcustomreturn" id="$R=:vN[tX_U:P.|-FSsh" x="488" y="138">
                   <mutation statements="false">
                     <arg name="x" varid="{hR#CsV^4Pyvp6Kdo.`;"></arg>
                   </mutation>
                   <field name="NAME">etwas tun2</field>
                   <field name="SCRIPT">DQpjb25zdCBjaGVlcmlvID0gcmVxdWlyZSgnY2hlZXJpbycpOw0KDQoNCg0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgJCA9IGNoZWVyaW8ubG9hZCh4KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBsaXN0NSA9ICQoJyonKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmluZCgnZGl2LmgtMTAwID4gIGRpdiA+cCA+YiAnKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG9BcnJheSgpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZWxlbWVudCA9PiB7IHJldHVybiAkKGVsZW1lbnQpLnRleHQoKX0pOyANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9sb2cobGlzdDUubGVuZ3RoICsiLS0tIitsaXN0NSkNCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbGlzdDVbM10gOyAgICAgICAgICAgICAgICAgDQoNCiAgICAgICAgICAgDQogIA0KDQo=</field>
                   <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                 </block>
                 <block type="schedule" id="cyI$XQ%l(lm-Q%J;FtLM" x="162" y="213">
                   <field name="SCHEDULE">13 */6 * * *</field>
                 </block>
                 <block type="request" id="*[W4G~=v4]mIx=iIt}M2" x="238" y="313">
                   <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                   <field name="WITH_STATEMENT">TRUE</field>
                   <field name="LOG"></field>
                   <value name="URL">
                     <shadow type="text" id="Amj|D[}|/mH=S01ekocZ">
                       <field name="TEXT">https://www.corona-in-zahlen.de/weltweit/deutschland/</field>
                     </shadow>
                   </value>
                   <statement name="STATEMENT">
                     <block type="debug" id="oW|$h`B-c]$!ak#}[|PG">
                       <field name="Severity">log</field>
                       <value name="TEXT">
                         <shadow type="text" id="~(J//+9Anh|nqw_Gi5/l">
                           <field name="TEXT">test</field>
                         </shadow>
                         <block type="procedures_callcustomreturn" id="{G:|{GaNW,x;zcG)%OW@">
                           <mutation name="etwas tun2">
                             <arg name="x"></arg>
                           </mutation>
                           <value name="ARG0">
                             <block type="variables_get" id="O8Cpj$$]m[X!;X+AXcJX">
                               <field name="VAR" id="t$]iI=~iN`PMfG-lj`iz">result</field>
                             </block>
                           </value>
                         </block>
                       </value>
                     </block>
                   </statement>
                 </block>
                </xml>
                

                David G. 1 Reply Last reply Reply Quote 0
                • David G.
                  David G. last edited by

                  Danke euch allen für die Reaktionen.
                  Werde ich testen.

                  1 Reply Last reply Reply Quote 0
                  • David G.
                    David G. @liv-in-sky last edited by David G.

                    @liv-in-sky

                    Kann es sein, dass da noch Tabs oder Leerstellen mitgeholt werden?

                    Lasse mir täglich eine Nachricht per telegram senden.

                    Sah heute so aus:
                    Screenshot_20210919-081858_Telegram.jpg

                    Vorher hatte ich an selber stelle einen anderen Wert aus dem Corona-Adapter. Dort SA alles gut aus. Hab im Text erstellen Bloch auch nur Zeilenumbrüche.
                    Die 70,5 müsste hinter Deutschland stehen.

                    liv-in-sky 2 Replies Last reply Reply Quote 0
                    • liv-in-sky
                      liv-in-sky @David G. last edited by

                      @david-g

                      bin mir ziemlich sicher, dass nur die zahl kommt - zeig doch mal deine skript, wo du es zusammen setzt

                      David G. 1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @David G. last edited by

                        @david-g

                        und poste auch mal den inhalt des widgets

                        1 Reply Last reply Reply Quote 0
                        • David G.
                          David G. @liv-in-sky last edited by David G.

                          @liv-in-sky

                          So sieht es aus.
                          Zur Erklärung mit dem "erledigt".
                          Der Corona-Adapter ruft morgens zwischen 8 und 10 alle 30min die Daten ab.

                          Mal kommen die Daten früher, mal was später. So habe ich gelöst, dass nur einmal eine Nachricht kommt.

                          Screenshot_20210919-094533_Chrome.jpg

                          Ein Widget gibt es nicht, geht per telegram raus.
                          Da wo jetzt die Variable inzidenz_d steht, hatte ich vorher einen Datenpunkt woe bei den beiden Landkreisen. Da sah es ordentlich aus.

                          liv-in-sky 2 Replies Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @David G. last edited by

                            @david-g

                            habe es nachgestellt - ist bei mir auch so - werd mal checken, ob ich den grund finde

                            1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @David G. last edited by

                              @david-g

                              du hattest recht - da war was mit drin - sorry - voll übersehen

                              ändere mal diese zeile in der funktion:

                              return list5[3].replace(/\"/g,"").trim() ; 
                              

                              Image 1.png

                              David G. 1 Reply Last reply Reply Quote 1
                              • David G.
                                David G. @liv-in-sky last edited by

                                @liv-in-sky

                                Klappt jetzt wunderbar.
                                Vielen Dank

                                Screenshot_20210921-082206_Telegram.jpg

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                601
                                Online

                                31.9k
                                Users

                                80.1k
                                Topics

                                1.3m
                                Posts

                                3
                                15
                                544
                                Loading More Posts
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes
                                Reply
                                • Reply as topic
                                Log in to reply
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                The ioBroker Community 2014-2023
                                logo