
Viele Seiten lassen einen ja nur eine bestimmte Menge an Daten downloaden und unterbinden danach jeglichen Dateitransfer. Da ich mir heute ein Skript gebaut habe, das mindestens 8h laufen wird und ich schon recht schnell wegen einem Download-Limit gestoppt werde, musste ich mir was ausdenken.
Manuell den Router resetten um eine neue IP zu bekommen wäre Wahnsinn. Da fiel mir twill ein.
Twill ist ein Python Programm bzw. Modul. D.h. es kann interaktiv in der Shell benutzt werden oder auch als Modul um selber Aufgaben skripten zu können.
Nun, was macht twill?
twill verhält sich wie ein Browser und kann Formulareingaben machen, Buttons drücken, etc... Also alles, was ein Browser kann, kann man skripten bzw. automatisieren.
Also ran an den Speck und den Button Rebooten im Arcor Router skripten. Logindaten sind natürlich Fantasiewerte...
Inhalt der Datei reboot-router.twill
go 'http://192.168.0.254/login.stm' fv 2 user root fv 2 pws Geheim submit go 'http://192.168.0.254/cgi-bin/restart.exe'
Ausführen via twill-sh
twill-sh reboot-router.twill
import twill twill.commands.go('http://192.168.0.254/login.stm') twill.commands.fv(2, 'user', 'root') twill.commands.fv(2, 'pws', 'Geheim') twill.commands.submit() twill.commands.go('http://192.168.0.254/cgi-bin/restart.exe')