hallo
ermutigt durch das Video-Donloadscript möchte ich mal mein kleines Downloadscript für imagevenue.com vorstellen ☺
ich hatte eine größere Linkliste für Bilder auf imagevenue.com. Natürlich wollte ich die nicht alle einzeln im Browser anklicken und speichern, sondern überlegte mir wie man das automatisieren kann. wenn ich nun den softlink mit wget hole, zB.
wget http://img123.imagevenue.com/img.php?image=1234...blahblah.jpg
bekomme ich zwar nicht das Bild, wohl aber einen HTML-code geliefert, der wiederum einen Teil des hardlinks liefert (der andere Teil ist im Softlink). Der fertige Hardlink nun ist der realexistierende Link zum Bild, welches sich nun mit wget holen lässt:
zB.
http://img123.imagevenue.com/abcdefBlahBlah-2234as6/loc123/123454321_Bildlink.jpg
aha! dieses Problem schreit also geradezu nach einer Perl-Lösung. so habe ich dieses kleine Script entwickelt:
http://ubuntuusers.de/paste/31785/
Ihr braucht eine fehlerfreie Liste mit den Softlinks, die ihr saugen möchtet. Fehlerfrei heisst, einfach alle Softlinks untereinander als Liste, ohne Leerzeilen, Leerzeichen oder fehlerhafte Zeichen vorn oder am Ende. Diese Datei muss linkdump.txt heissen.
Es sind im Script selbst, ab Zeile 22 drei Einstellungen vorzunehmen (KDE: zB. im kate bearbeiten):
22 my $linkdumpdirectory = "/home/joe/perl/wget/";
hier ist das Verzeichnis mit Leserechten anzugeben, wo sich linkdump.txt befindet.
24 my $tempdir = "/home/joe/perl/wget/tmp/";
das Script holt temporäre Dateien, legt sie in diesem Vzchns. ab. Nach getaener Arbeit dieses Vzchns. leeren (nicht löschen). Benötigt Schreibrechte
26 my $targetdir = "/home/joe/perl/wget/target/";
schliesslich noch das Zielverzeichnis für die Bilder. Schreibrechte, logo.
Ruft http://ubuntuusers.de/paste/31785/ auf, Aktionen-> Anzeigen als Text, und als zB. imagevenue.pl speichern. wohin, ist eigentlich egal, es sollte systemweit aufzurufen sein. Perl5 genügt, es wird auf 99,9 % Eurer Systeme laufen ☺
Aufrufen mit
home/joe/$> perl imagevenue.pl
und wer debuggen möchte:
home/joe/$> perl -c imagevenue.pl
Beschreibung verständlich? Der Einsatzradius ist vermutlich nicht ganz so groß wie der des Videodownloaders. Aber es kann wertvolle Dienste leisten. der "Haken" ist, man braucht erstmal das fehlerfreie linkdump.txt. Es lassen sich aber mit Leichtigkeit Workarounds schaffen, die den Einsatzradius entscheident erweitern können. zB. eine HTML Seite parsen und die linkdump.txt daraus generieren. in Perl im Handumdrehen.
so, und nun comments welcome 8)
viele Grüße