https://preview.redd.it/ubsk6khvpdkf1.png?width=1248&format=png&auto=webp&s=08c26ff1767BaAdbd85cb3be60371729eddd9a0f

    Oh, dieser beschissene Reddit -Texteditor – habe den gesamten Code -Block vermasselt! Ich werde versuchen, es zu beheben!

    SRF Meteo ist eine der Webseiten, auf die wir bei der Arbeit zugreifen können. Die Wetterwebseite zeigt jedoch nicht die Daten des angegebenen Wochentags an. Das hat mich wirklich gestört. Wirklich! Also beschloss ich, das zu ändern und schrieb ein kleines Greasemonkey-Skript. Ich bin kein professioneller Programmierer – und vielleicht gibt es bessere Möglichkeiten, es zu tun, ich weiß es nicht. Ich habe es nur mit Mozilla Firefox für Windows 10/11 getestet.

    Für diejenigen, die es versuchen wollen:

    1. Installieren Sie Mozilla Firefox
    2. Installieren Sie Firefox Addon "Greasemonkey"
    3. Aktivieren Sie Greasemonkey
      1. Klicken Sie in der Symbolleiste auf Greasemonkey-Icon und klicken Sie auf "Greasemonkey ist deaktiviert". Es aktiviert das Addon. Es ist eine Flip/Flop -Einstellung. (Siehe Online -Tutorials)
    4. Erstellen Sie ein neues Greasemonkey -Skript
      1. Klicken Sie auf Greasemonkey-Icon und Klick "Neues Benutzerskript …" (Weitere Informationen finden Sie unter Tutorials)
    5. Kopieren Sie das folgende Skript in den Greasemonkey-Editor
    6. Speichern Sie das Skript
    7. Öffnen Sie einen neuen Firefox -Browser -Registerkarte und navigieren Sie zu: SRF -Webseite Wetter
    8. beten

    Auch hier bin ich kein professioneller Programmierer, aber vielleicht sieht jemand von SRF Meteo dies und wird diese Funktion mit seiner IT und dem Willen für sich genommen umsetzen. Weil: Nach jeder Webseite die Code unterstellt.

    Nein, ich kann nicht benutzen fauster.com Ich kann auch nicht Smartphones an meinem Arbeitsplatz verwenden.

    Und das ist das Greaesmonkey-Skript (ich habe keine Ahnung, wie Github und solche funktionieren):

    // == UserScript ==
    // Zuletzt geändert: 30.11.23 / sisrt / v001
    // 09.04.24 / sisrt / v002 / Minor Fix
    // 22.08.25 / sisrt / v003 / fix als V002 funktioniert nicht mehr
    // Nennen Sie SRF Meteo – DateAdder
    // Version 0.0.3
    // erfordern http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js

    // erfordern https://gist.github.com/raw/2625891/waitforkeyElements.js

    // keine gib keine
    // übereinstimmen https://www.srf.ch/meteo/wetter/

    // übereinstimmen https://www.srf.ch/meteo/wetter/*

    // ==/usercript ==

    // Helferfunktionserklärungen

    const debug_mode = false;

    const local_lc = "Das ist das"; // Formatdatum in diesem Gebietsschema

    /*

    Old V002 – funktioniert mit diesen Klassennamen nicht mehr

    const span_class_name_anyday = "Wetter-Tag__long"; // Suche nach diesen Spannweiten in der Webseite

    const span_class_name_today = "Wetterkartenwetter-Tag";

    */

    const span_class_name_anyday = "M: Block M: Text-Base M: LG: -MT-0 M: LG: Text-XL M: LG: Leading-[14px] M: LG: Tracking-0.4"; // Suche nach diesen Spannweiten in der Webseite

    const span_class_name_today = "Wetterkartenwetter-Tag";

    //////Datum Helfer -Funktionserklärungen – Beginnen Sie

    Datum.Prototyp.Adddays = Funktion (Tage) {

    var date = neues Datum (this.ValueOf ());

    Date.SetDate (Datum.getDate () + Tage);

    Rückgabedatum;

    }

    Funktion GetWeekdayNames (Lokalschema) {

    var -basiertate = neues Datum (Datum.utc (2017, 0, 2)); // nur ein Montag

    Var wochentagsnamen = [];

    für (i = 0; i <7; i ++) {

    Weekdaynames.push (basiertate.tolocalEdateString (Lokalschema, {Wochentag: ‚Long‘}));

    basiertate.setDate (basiertate.getDate () + 1);

    }

    Wochentag zurückkehren;

    }

    Funktion GetWeekdayName (Lokale, DEDESTESTR = NEW DATE ()) {

    var date = neues Datum (datESTR);

    Rückgabedatum.TolocalEdatestring (Lokalschema, {Wochentag: ‚Long‘});

    }

    ///// Datum Helfer -Funktionserklärungen – Ende

    ///// Andere Funktionserklärungen – Beginnen Sie

    Funktionsdebugprint (s) {

    if(DEBUG\_MODE) console.log(s);
    

    } // Debugprint ()

    Funktionsdebugalert (s) {

    if(DEBUG\_MODE) alert(s);
    

    } // Debugalert ()

    function injectdates (jnode) {

    // get all week day names localized
    
    var weekDayNames = getWeekDayNames(LOCAL\_LC);
    
    
    
    
    
    // get all spans representing a weather forcast day
    
    var spans = document.getElementsByClassName(SPAN\_CLASS\_NAME\_ANYDAY);
    
    debugPrint("weekday spans found: " + spans.length);
    
    
    
    
    
    // loop through all spans
    
    for (var i = 0; i < spans.length; i++) {  
    
    
    
    
    
        var dt = new Date();
    
    
    
        // just add index of span, if spans are in chronological order in html (assumptions)
    

    dt = dt.adddays (i+1);

        spans\[i\].innerHTML += ((i==0 ? "\&nbsp;heute<br/>" : "<br/>") + dt.toLocaleDateString(LOCAL\_LC));
    

    /*

    Alter V002

    // Wenn die Spannweiten nicht in chronologischer Reihenfolge sind (siehe oben), konvertieren Sie dies stattdessen:

    // Heute Wochentagsname

    var woekdaynametoday = GetWeekdayName (local_lc);

    var wochentayIndextoday = woekdaynames.findIndex (item => item === Wochentagnametoday);

    // InnerText enthält den Wochentagsnamen in lokal

    var wokwochdaynamelookup = Spannweite[i].IperText;

    // Nach dem Wochentagsnamen in zuvor vorbereiteten lokalisierten Sammlung suchen

    var wochdayIndexlookup = woekdaynames.findIndex (item => item === WOCHEDDAGNAMELOOKUP);

    var DayStoadd = WeekdayIndexlookup – WochentagesDextoday;

    console.log (woCHNEDAYINDEXTODODAY + " / " + woCHNEDDAYIDEDEXLOOKUP);

    if (tayStoadd <0) {

    tagstoadd += 7;

    }

    console.log (DayStoadd);

    */

    }
    

    /*

    Alter V002

    // Aktualisieren Sie den Today-Span und fügen Sie „Heute“ hinzu, wenn die Spannweiten nicht in chronologischer Reihenfolge sind

    var spans = document.getElementsByClassName (span_class_name_today);

    für (var i = 0; i

    if (Spans[i].innTertext.rim () == "Heute") {

    Spannweiten[i].innerHTML = "Heute
    " + Wochentagnametoday;

    }

    }

    \*/
    
    
    
    
    
    debugAlert("done!");
    

    } // injectdates ()

    ///// Andere Funktionserklärungen – Ende

    // hauptsächlich

    console.log ("SRF Meteo – DateAdder – Start");

    // erfordert WaitForKeyElements.js & jquery.min.js

    WaitforkeyElements (

    "[class='m:flex m:justify-center m:justify-normal! m:overflow-hidden m:bg-warmgrey-10 m:py-6 m:md:px-0 m:lg:justify-center! m:dark:bg-blue-950']"Injectdates

    );

    console.log ("SRF Meteo – DateAdder – Ende");

    I added dates to the SRF Meteo web page because the lack of them annoyed me every single day!
    byu/SiSRT inSwitzerland



    Von SiSRT

    Share.
    Leave A Reply