Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    SOLVED [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      denjo @bahnuhr last edited by

      @bahnuhr es liegt wohl am widget, welches muss ich da jetzt nehmen???

      1 Reply Last reply Reply Quote 0
      • P
        pix last edited by Jey Cee

        Hallo,

        ich habe im letzten Post ja nur das Ergebnis gezeigt, nicht den Weg dahin. Wird hier nachgeholt:

        Wie oben erwähnt, ändert sich der Link zur aktuellsten Version der Sendung ständig. Deshalb nutze ich dieses Skript, um den Link zeitgesteuert zu aktualisieren. Das Skript legt einen Datenpunkt "VIS.URL.Tagesschau" an. Den brauche ich später in VIS.

        Neue Version vom 11.11.2018

        /* VIS Tagesschau_Link
        parsed die Seite https://www.tagesschau.de/100sekunden/ und sucht nach der URL zum aktuellsten Video
         02.03.2016 erstellt von pix
        15.03.2016 zu Javascript Instanz 1 gewechselt
        24.09.2016 umbenannt in VIS_Link_Tagesschau
        11.11.2018 Skript angepasst und optimiert
        */
        const fC = false; // forceCreation für createState()
        const logging = false;
        const instanz = 'javascript.1.';
        const idURL = instanz + 'VIS.URL.Tagesschau';
        // ab hier nix mehr ändern
        const link = "http://www.tagesschau.de/100sekunden/";
         createState(idURL,"", fC, {
            name: "Link zu Tagesschau in 100s",
            desc: "geparster Link aus tagesschau.de",
            type: "string",
            role: "text.url"
        });
         function findeURL () {   
            let request = require('request');
            let film_url;
            try {
                request(link, function (error, response, body) {
                    if (!error && response.statusCode == 200) {
                        // kein Fehler, Inhalt in body
                        //log(body);
                        // HTML Code der Webseite: Inhalt zwischen  und 
          speichern
                        let text1 = "
         Wir bieten dieses Video in folgenden Formaten zum Download an:
         ",
                            text2 = "
         **Hinweis:** Falls die Videodatei beim Klicken nicht automatisch gespeichert wird, können Sie mit der rechten Maustaste klicken und 'Ziel speichern unter ...' auswählen.
         "; 
                        let start = body.search(text1) + text1.length;
                        let ende = body.search(text2);
                        if (logging) log("Startposition: " + start);
                        if (logging) log("Endposition: " + ende);
                        let zwischenspeicher = ((start != -1) && (ende != -1) ) ? body.slice(start,ende) : "Fehler beim Ausschneiden";
                        if (logging) log("Zwischenspeicher: " + zwischenspeicher);
        
                        let text3 = "//download", 
                            text4 = ".websm.h264.mp4"; 
                        let start2 = body.search(text3);
                        let ende2 = body.search(text4);
                        if (logging) log("Startposition2: " + start2);
                        if (logging) log("Endposition2: " + ende2);
                        let zwischenspeicher2 = ((start2 != -1) && (ende2 != -1) ) ? body.slice(start2,ende2) : "Fehler beim Ausschneiden 2";
                        if (logging) log(zwischenspeicher2);
                        film_url = "http:" + zwischenspeicher2 + ".webl.h264.mp4";
                        setState(idURL, film_url);
                        if (logging) log ("URL: " + film_url);
                    } else  { // Error beim Einlesen
                        log(error, 'error'); 
                    }
                });   // Ende request 
            } catch (fehler) {
                log("Fehler (try): " + fehler, "error");
            }
        } // Ende findeURL
         schedule("8 */1 * * *", findeURL); // jedeStunde um 8 nach voll
        setTimeout(findeURL, 2000);
        
        

        ALTE VERSION VON 2016

        /* VIS Tagesschau_Link
        parsed die Seite https://www.tagesschau.de/100sekunden/ und sucht nach der URL zum aktuellsten Video
         erstellt: 02.03.2016 von pix
        15.03.2016 zu Javascript Instanz 1 gewechselt
        */
         var logging = false;
        var instanz = 'javascript.1.';
         // ab hier nix mehr ändern
         createState('VIS.URL.Tagesschau','', {
            name: 'Link zu Tagesschau in 100s',
            desc: 'geparster Link aus tagesschau.de',
            type: 'string'
        });
         var idURL = instanz + 'VIS.URL.Tagesschau';
         var link = 'http://www.tagesschau.de/100sekunden/';
        var film_url;
         function findeURL () {   
            var optin = true;
            var request = require('request');
             if (optin) try {
                request(link, function (error, response, body) {
                    if (!error && response.statusCode == 200) {
                        // kein Fehler, Inhalt in body
                        //log(body);
                        // HTML Code der Webseite: Inhalt zwischen  und 
          speichern
                        var text1 = '
         Wir bieten dieses Video in folgenden Formaten zum Download an:
         ',
                            text2 = '
         **Hinweis:** Falls die Videodatei beim Klicken nicht automatisch gespeichert wird, können Sie mit der rechten Maustaste klicken und "Ziel speichern unter ..." auswählen.
         '; 
                        var start = body.search(text1) + text1.length;
                        var ende = body.search(text2);
                        if (logging) log('Startposition: ' + start);
                        if (logging) log('Endposition: ' + ende);
                        var zwischenspeicher = ((start != -1) && (ende != -1) ) ? body.slice(start,ende) : 'Fehler beim Ausschneiden';
                        if (logging) log(zwischenspeicher);
        
                        var text3 = 'http://download',
                            text4 = '.websm.h264.mp4'; 
                        var start2 = body.search(text3);
                        var ende2 = body.search(text4);
                        if (logging) log('Startposition: ' + start2);
                        if (logging) log('Endposition: ' + ende2);
                        var zwischenspeicher2 = ((start2 != -1) && (ende2 != -1) ) ? body.slice(start2,ende2) : 'Fehler beim Ausschneiden';
                        if (logging) log(zwischenspeicher2);
                        film_url = zwischenspeicher2 + '.webl.h264.mp4';
                        setState(idURL, film_url);
                    } else  { // Error beim Einlesen
                        log(error, 'error'); 
                    }
                });   // Ende request 
            } catch (fehler) {
                log('Fehler (try): ' + fehler, 'error');
            }
        } // Ende findeURL
         schedule("8 */1 * * *", findeURL); // jedeStunde um 8 nach voll
        findeURL();
        

        Jetzt muss in VIS noch ein Widget mit Dialog gebaut werden, das bei Tastendruck den Dialog öffnet, in welchem dann das Video läuft:

        [{"tpl":"tplMetroTileDialogStatic","data":{"visibility-cond":"==","visibility-val":1,"hover":false,"transform":"true","bg_class":"bg-darkCyan","icon_class":"","icon_badge":"","badge_bg_class":"","brand_bg_class":"","dialog_draggable":"true","dialog_icon_class":"icon-film","gestures-offsetX":0,"gestures-offsetY":0,"name":"Tagesschau","label":"tagesschau in 100s","html":"\n<video src="\&quot;{javascript.1.VIS.URL.Tagesschau}\&quot;" width="\&quot;950\&quot;" height="\&quot;543\&quot;" \nposter="\&quot;video-standbild.jpg\&quot;" autobuffer/autoplay/\ncontrols="">\n\nSchade – hier käme ein Video, wenn Ihr \nBrowser HTML5 Unterstützung hätte, wie z.B. der \naktuelle Firefox\n\n</video>","dialog_width":"960","dialog_height":"623","dialog_title":"Tagesschau in 100s","dialog_flat":true,"dialog_shadow":true,"dialog_modal":true,"icon_src":"/vis.0/iPad/img/tagesschau100_logo_base.png","icon_height":"22","icon_width":"96","icon_top":"50","icon_left":"24","dialog_icon_src":"","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false},"style":{"left":"428px","top":"8px","z-index":"20"},"widgetSet":"metro"}]
        

        Der Link zum Video ist im Widget als {Binding} hinterlegt. Die Größen sind für ein iPad Air Landscape ausgelegt.

        Wenn ich Zeit habe, teste ich noch andere Sendungen von anderen Sendern. 😉

        Gruß

        Pix

        EDIT: Neues Skript vom 11.11.2018 im Spoiler

        1 Reply Last reply Reply Quote 1
        • bahnuhr
          bahnuhr Forum Testing Most Active @denjo last edited by

          @denjo sagte in [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?:

          video nicht aktualisiert.

          bei mir schon.

          @denjo sagte in [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?:

          irgendwie einstellen das das video erst startet

          Na, dann nehm doch mal autoplay raus. Oder wie hast du es eingebunden.

          @denjo sagte in [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?:

          welches muss ich da jetzt nehmen???

          welches hast du genommen?

          ich habe:
          9f2c03e6-8e06-4fb2-b955-8936dfae5a59-image.png

          D 1 Reply Last reply Reply Quote 0
          • D
            denjo last edited by

            @bahnuhr ich bin wohl blind, finde das widget nicht. kannst du mir mal ein bild vom widget zeigen?

            1 Reply Last reply Reply Quote 0
            • D
              denjo @bahnuhr last edited by

              @bahnuhr

              der?
              90d8bcd8-8ab9-41cc-ac52-6869baf48d9f-image.png

              und wo muss ich das object eintragen??

              157c515d-2bce-4890-b8ba-f3db7e0fa7e9-image.png

              bahnuhr 1 Reply Last reply Reply Quote 0
              • bahnuhr
                bahnuhr Forum Testing Most Active @denjo last edited by

                @denjo sagte in [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?:

                der?

                Nein,
                siehe #2

                Hast du den thread überhaupt gelesen ?

                1 Reply Last reply Reply Quote 0
                • J
                  jwerlsdf last edited by

                  Hallo, das Skript funktioniert noch sehr gut. Hat jemand dieses aber bereits nach httpGet umgebaut?

                  Neuschwansteini 1 Reply Last reply Reply Quote 1
                  • Neuschwansteini
                    Neuschwansteini @jwerlsdf last edited by

                    @jwerlsdf

                    ja, ne quick&dirty Variante mit dem Script von @bahnuhr , geht aber:

                    /* VIS Tagesschau_Link
                    parsed die Seite https://www.tagesschau.de/100sekunden/ und sucht nach der URL zum aktuellsten Video
                    {1}
                    02.03.2016 erstellt von pix
                    15.03.2016 zu Javascript Instanz 1 gewechselt
                    24.09.2016 umbenannt in VIS_Link_Tagesschau
                    11.11.2018 Skript angepasst und optimiert
                    03.05.2021 Skript an neue Tagesschau-Seite angepasst und optimiert
                    */
                     
                     
                    const logging = true;
                    const idURL = '0_userdata.0.vis.Tagesschau'/*Link zu Tagesschau in 100s*/;
                    const idURL2 = '0_userdata.0.vis.Tagesschau100s'/*Link zu Tagesschau in 100s*/;
                    const link = 'http://www.tagesschau.de/multimedia/sendung/tagesschau_in_100_sekunden/';
                    let film_url; let stream_url;
                     
                     
                    function findeURL () {   
                       //let request = require('request');
                       try {
                           httpGet(link, function (error, response, body) {
                               if (!error && response.statusCode == 200) {
                                   let regexp = /media\.tagesschau\.de\/video\/\d*\/\d*\/TV-\d*-\d*-\d*\.webxl\.h264\.mp4/gm;
                                   let result_arr = regexp.exec(body);
                                   film_url = result_arr[0];
                                   setState(idURL, "https://" + film_url);
                                   if (logging) log ("URL: " + "https://" + film_url);
                               } else  { // Error beim Einlesen
                                   log(error, 'error'); 
                               }
                           });   // Ende request 
                       } catch (fehler) {
                           log("Fehler (try): " + fehler, "error");
                       }
                          // nicht schön, aber nochmal für Stream
                       try {
                           //Tagesschau Stream als HTML
                           const link = "https://www.tagesschau.de/multimedia/livestreams/";
                           //let regexp = /https:\/\/www\.tagesschau\.de\/multimedia\/livestreams\/livestream\d*\/index~player\.html/gm;
                           //let regexp = /https:\/\/www\.tagesschau\.de\/multimedia\/livestreams\/livestream1\d*-\d*~player\.html/gm;
                           httpGet(link, function (error, response, body) {
                               if (!error && response.statusCode == 200) {
                                   //let result_arr = regexp.exec(body);
                                   //stream_url = result_arr[0];
                                   //log ("hier1 " + stream_url);
                                   stream_url = "https://www.tagesschau.de/multimedia/livestreams/index~player.html";
                                   setState(idURL2, stream_url);
                                   if (logging) log ("HTML: " + stream_url);
                               } else  { // Error beim Einlesen
                                   log(error, 'error'); 
                               }
                           });   // Ende request 
                       } catch (fehler) {
                           log("Fehler (try): " + fehler, "error");
                       }
                     
                    } 
                     
                    schedule('8 */1 * * *', findeURL); // jedeStunde um 8 nach voll
                    findeURL();
                     
                    
                    
                    J 1 Reply Last reply Reply Quote 0
                    • J
                      jwerlsdf @Neuschwansteini last edited by

                      @ilovegym
                      Vielen Dank erst einmal. Ich bekomme aber folgenden Fehler:

                      (script.js.System_Tagesschau_100_Sekunden:27:37)

                      Dementsprechend wird kein link bei tagesschau sondern nur bei tagesschau 100s geschrieben.

                      bahnuhr 1 Reply Last reply Reply Quote 0
                      • bahnuhr
                        bahnuhr Forum Testing Most Active @jwerlsdf last edited by

                        @jwerlsdf
                        Nehm dies:

                        /* VIS Tagesschau_Link
                        parsed die Seite https://www.tagesschau.de/100sekunden/ und sucht nach der URL zum aktuellsten Video
                        {1}
                        02.03.2016 erstellt von pix
                        15.03.2016 zu Javascript Instanz 1 gewechselt
                        24.09.2016 umbenannt in VIS_Link_Tagesschau
                        11.11.2018 Skript angepasst und optimiert
                        03.05.2021 Skript an neue Tagesschau-Seite angepasst und optimiert
                        */
                        
                        
                        const logging = true;
                        const idURL = 'javascript.0.System.Sonstige.Tagesschau_100';
                        const idURL2 = 'javascript.0.System.Sonstige.Tagesschau_Stream';
                        const link = 'http://www.tagesschau.de/multimedia/sendung/tagesschau_in_100_sekunden/';
                        let film_url; let stream_url;
                        
                        
                        function findeURL () {   
                           try {
                                httpGet(link, { responseType: 'text' }, (error, response) => { 
                                    if (!error && response.statusCode == 200) {
                                       let regexp = /media\.tagesschau\.de\/video\/\d*\/\d*\/TV-\d*-\d*-\d*\.webxl\.h264\.mp4/gm;
                                       let result_arr = regexp.exec(response.data);
                                       film_url = result_arr[0];
                                       setState(idURL, "https://" + film_url);
                                       if (logging) log ("URL: " + "https://" + film_url);
                                    } else { 
                                        log(error, 'error'); 
                                    } 
                                });
                            } catch (fehler) {
                                log("Fehler (try): " + fehler, "error");
                            }
                                // nicht schön, aber nochmal für Stream
                           try {
                                //Tagesschau Stream als HTML
                                const link = "https://www.tagesschau.de/multimedia/livestreams/";
                                httpGet(link, { responseType: 'text' }, (error, response) => { 
                                    if (!error && response.statusCode == 200) {
                                       stream_url = "https://www.tagesschau.de/multimedia/livestreams/index~player.html";
                                       setState(idURL2, stream_url);
                                       if (logging) log ("HTML: " + stream_url);
                                    } else { 
                                        log(error, 'error'); 
                                    } 
                                });
                            } catch (fehler) {
                                log("Fehler (try): " + fehler, "error");
                            }
                        } 
                         
                        schedule("8 */1 * * *", findeURL); // jedeStunde um 8 nach voll
                        findeURL();
                        
                        
                        J Neuschwansteini 2 Replies Last reply Reply Quote 2
                        • J
                          jwerlsdf @bahnuhr last edited by

                          @bahnuhr
                          Danke, hat geklappt!

                          1 Reply Last reply Reply Quote 0
                          • Neuschwansteini
                            Neuschwansteini @bahnuhr last edited by

                            @bahnuhr

                            Anständig das response genutzt !

                            bahnuhr 1 Reply Last reply Reply Quote 0
                            • bahnuhr
                              bahnuhr Forum Testing Most Active @Neuschwansteini last edited by

                              @ilovegym sagte in [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?:

                              @bahnuhr

                              Anständig das response genutzt !

                              Was meinst du damit?
                              Habs ja erst seit kurzem umgesetzt; dieses httpget.

                              Dauert halt doch etwas wenn man 100+ Scripte ändern muss.

                              Schaust du kein Fußball ?

                              Neuschwansteini 1 Reply Last reply Reply Quote 0
                              • Neuschwansteini
                                Neuschwansteini @bahnuhr last edited by

                                @bahnuhr

                                response - die Parameter fuer httpGET richtig genutzt, ich hatte das einfach ersetzt und rumprobiert.

                                Fussball ? Nur EM oder WM, alles andere weniger.. mir sind die, die im Kreis fahren und sich mal im Kreis drehen, lieber.. erinnert so an die Arbeit.. 😄

                                1 Reply Last reply Reply Quote 0
                                • B
                                  bubus last edited by bubus

                                  Tagesschau?
                                  Besser die Realität einbinden:
                                  Reitschuster
                                  Junge Freiheit
                                  Tichys Einnlick
                                  Nius
                                  Achgut
                                  Epoch Times
                                  usw.
                                  😀
                                  Aber Vorsicht! Es könnten alternative Inhalte (Wahrheit) verbreitet werden!

                                  Neuschwansteini 1 Reply Last reply Reply Quote -2
                                  • Neuschwansteini
                                    Neuschwansteini @bubus last edited by

                                    @bubus

                                    es geht hier im Thread um das Einbinden des Videostreams der Tagesshow, die von jedem zwangsläufig bezahlt wird (Rundfunkgebühren).

                                    Bei deinen genannten habe ich keinen Stream gefunden, oder gibts da einen, und falls ja, wie hast du den eingebunden?
                                    Waere dann aber auch schon wieder offtopic, aber kannst ja gerne einen neuen Thread eröffnen und deine Integration der alternativen zeigen.

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    1.1k
                                    Online

                                    31.7k
                                    Users

                                    79.7k
                                    Topics

                                    1.3m
                                    Posts

                                    42
                                    218
                                    32937
                                    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