Also - ich beschreib mal kurz wie das Progrämmchen so funktioniert. Nicht dass da noch einer kommt und sagt, es sei zu kompliziert.
Als erstes muss der
Python Interpreter installiert werden.
Danach lasst sich das Script per Doppelklick starten. Eine Konsole erscheint und nun passiert folgendes:
1. Beim ersten Start des Script fragt es euch zwei Dinge:
- Verzeichnis der GTL Installation
- Datum der letzen manuellen Installation von Car und Track Dateien.
Letzteres verhindert, dass alte oder alle Dateien nochmals übertragen werden.
2. Danach durchsucht das Script den FTP Server und baut sich eine Dateiliste auf. Dies dauert ca. 30 Sekunden. Bei ersten Start wird dabei die Dateiliste in eine lokale Datei "altbierbude.csv" geschrieben, diese enthält dabei aber nur Dateien älteren Datums als das angegebene.
3. Die gefunden Dateien werden mit Dateiliste aus "altbierbude.csv" verglichen und nun neuere Dateien angezeigt. Die Frage, ob man dies downloaden und installieren möchte wird üblicherweise mit y + ENTER beantwortet.
4. Der Download startet und die neuen Dateien werden in das aktuelle Verzeichnis kopiert. Die Verzeichnisstruktur des FTP Severs bleibt dabei erhalten. Diese Zip-Dateien werden dann noch in das entsprechende Verzeichnis der GTL Installation entpackt. Vorhandene Dateien werden dabei überschrieben.
5. Wenn alles ohne Fehler abgelaufen ist, wird die aktuelle Dateiliste in der Datei "altbierbude.csv" hinterlegt.
6. Let's race!
Klingt einfach - hat aber ein paar Haken.
- Ich weiss nicht wie gut der FTP Server die Verzeichnisscannerei verträgt. Es werden zwar nicht viele Daten übertragen aber sehr viele Kommandos ausgeführt. Dies ist auch der Grund, dass es so lange dauert. Lässt sich aber umgehen, wenn bei jeder neuen Datei auf dem Sever von den Admins eine Verzeichnisliste angelegt wird, welche den aktuellen Zustand repräsentiert. Diese Datei zu laden würde keine Sekunde dauern.
- Die Zip Archive müssen einer vorgegebenen Struktur entsprechen. Ansonsten entpackt das Script die Dateien am falschen Ort und GTL wird die Dateien nicht finden. Momentan sieht es recht gut damit aus, ich suche aber noch nach ausreisern ...
- Das Script ist nicht gerade Fehlertolerant. Bei einem nicht vorhergesehenen Exception beendet sich das Programm einfach, erstellt dabei aber wenigsten eine error.log Datei.
Ich schlage deshalb vor, dass das Programm zuerst einmal nur von einem eingeschränkten Personenkreis getestet wird. Vorzugsweise natürlich von den Admins des Servers.
Wenn du mir noch deine Email Adresse zukommen lässt, schick ich dir das Script. Ist nicht sehr gross.
Grüsse.
P.S. Tut mir leid, dass ich den Leach Schutz umgangen habe. Mein Downloadmanager war bei mir aber immer so frei, die URL, Login und Passwort des FTP Servers anzuzeigen.