Zugegeben, der Titel klingt zunächst etwas komisch, hat aber einen ganz einfachen Hintergrund. In einigen Fällen kann es durchaus hilfreich sein, eine Webseite zu einem bestimmten Zeitpunkt automatisch aufzurufen, und sei es nur um zu testen ob das Web noch erreichbar ist.
Zunächst benötigt man ein Programm, welches eine Webseite aufrufen bzw. einlesen kann. Hiefür eignet sich hervorragend wget. Durch die umfangreichen Konfigurationsmöglichkeiten kann man viele Gegenbenheiten abdecken.
Unter Umständen ist es aber besser ein eigenes Programm zu schreiben und somit sehr flexibel auf neue Anforderungen reagieren zu können. Ein einfaches Konsolenprogramm würde in diesem Fall ausreichen.
Das .NET Framework bietet mit den Klassen HttpWebRequest u. HttpWebResponse eine Möglichkeit an, per Programmcode Webseiten einzulesen und das Ergebnis in einem String zu speichern.
static string ReadUrl(string url)
{
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
Stream stream = webResponse.GetResponseStream();
StreamReader streamReader = new StreamReader(stream);
string html = streamReader.ReadToEnd();
return html;
}
Diese Methode nimmt die Url als Parameter entgegen und stellt per HttpWebRequest eine Verbindung her. Das Objekt webResponse liest die Rückgabe aus, und speichert diesen per GetResponseStream in einem String ab. Existiert die Url nicht, wird eine Exception ausgelöst, die dann abgefangen werden sollte. Denkbar wäre hier eine Benachrichtigung per E-Mail oder ein Eintrag in ein Log-File.
Das Konsolenprogrammm selbst nimmt die geforderte Url als Aufruf-Parameter entgegen.
static void Main(string[] args)
{
if (args.Length == 0)
{
Console.WriteLine("Url is missing");
return;
}
Console.WriteLine(ReadUrl(args[0]));
}
Um das ausgewählte oder selbstgeschriebene Programm zu einem fest definierten Zeitpunkt aufzurufen bietet sich der Task-Manager an. Unter Windows XP findet man diesen unter dem Menüpunkt “Geplante Tasks”. Windows Vista bennent diesen Bereich als “Aufgabenplanung”. Die Einrichtung hier ist selbsterklärend und kann per Assistenten durchgeführt werden.

Dieses Beispielprogramm sollte lediglich als Vorlage verwendet und entsprechend der Anforderungen erweitert werden. Wie oben bereits angesprochen, wäre eine Benachrichtung per E-Mail, ein Datei-Logging, oder das Einlesen der Urls aus einer Textdatei denkbar.
Das Beispielprojekt kann hier runtergeladen werden.