Website in Datei speichern (im Hintergrund)

halwe

Lt. Commander
Registriert
Jan. 2007
Beiträge
1.717
Hallo zusammen,

ich möchte gern Statusseiten meines Mähroboters regelmäßig speichern.
Die Seite rufe aktuell ich im Browser mit
Code:
http://<name>:<passwort>@<ip-adresse>/log.html
auf, im Grunde wie eine normale Website. Ich kann sie auch drucken und abspeichern.

Da dies aber regelmäßig geschehen soll, würde ich das gern automatisieren, am Besten mit einem Kommandozeilenbefehl, der im Hintergrund läuft. Geht das? Gibt es Tools, die eine Website aufrufen und im Hintergrund einfach abspeichern?

Viele Grüße, Halwe
 
Danke für die schnelle Rückmeldung.

Also skripten kann ich, mit AHK.

Aber "Cron Job", "Curl" - sind das Sprachen oder Tools? Ich werd da nicht ganz schlau, vielleicht ist das auch zu hoch für ich. Wollte jetzt nicht unbedingt eine neue Sprache erlernen müssen.
Wahrscheinlich brauche ich so was wie ne Anfängeranleitung.
 
Cron Jobs sind die "Aufgabenplanung" unter Linux, Curl ist ein Programm um Webseiten lokal speichern zu können. Man würde dann bspw. einen Cron Job anlegen, der alle x Minuten Curl mit den notwendigen Optionen aufzurufen.

Unter Windows ist "automatisiert etwas im Hintergrund" machen lassen immer aufwendiger. Da würde ich mir vmtl irgendwas mit einem pdf Drucker zusammen basteln
 
snaxilian schrieb:
Unter Windows ist "automatisiert etwas im Hintergrund" machen lassen immer aufwendiger. Da würde ich mir vmtl irgendwas mit einem pdf Drucker zusammen basteln
Ach so, Linux.:rolleyes:
Ja, per Skript könnte ich das automatisieren, aber ich habe keinen Plan, wie man das im Hintergrund machen könnte...
 
Möchtest du den Seitenquelltext speichern? Ich habe das eben mit C# umgesetzt. Du kannst das kleine Programm mit der Aufgabenplanung zeitgesteuert aufrufen. Mittels Parametern kannst du die URL und das Ausgabeverzeichnis festlegen.

Es ploppt allerdings für 2 Sekunden die Kommandozeile auf, wenn das Programm ausgeführt wird.

Code:
 class Program
    {
        static void Main(string[] args)
        {
            string url = GetURL(args);
            string destination = GetDestinationPath(args);
            string html = GetHTML(url);
            SaveHTML(html, destination);
        }

        static string GetURL(string[] args)
        {
            return args[0];
        }

        static string GetDestinationPath(string[] args)
        {
            return args[1];
        }

        static string GetHTML(string url)
        {
            WebClient wc = new WebClient();          
            return wc.DownloadString(url);
            
        }

        static void SaveHTML(string html, string destination)
        {
            DateTime date = DateTime.Now;
            String path = destination + date.ToString("dd_MM_yyyy_hh_mm_ss") + ".html";
            File.WriteAllText(path, html);
        }

    }
 
Vielen Dank!
Aber ich habe keine Ahnung, wie ich unter Windows 7 ein C Programm starte.

Bisher habe ich nur vbs-Skripte gestartet.
Und: Bekomme ich damit die notwendige Anmeldung auf der Website hin?
 
Zurück
Oben