halli hallo liebe Linux-Freunde guten ABEND
wollte mich mal wieder melden...
hab eine Aufgabe - moechte von web-sites (2500) screenshots machen - brauche diese als Thumbnails...
Also ich habe ein Verzeichnis mit Urls - das nenne ich mal urls.txt soweit so gut.
Das sieht dann also so aus:
Dazu hab ich folgenden Code - der läuft auch nicht schlecht!
alles liegt in diesem Ordner drinne:
und jetzt kommt der Punkt - ich krieg das script nicht dazu das es in den Ordner images reinschreibt
- es macht immer alles aber nicht das was ich will.
M.a.W. es ist wie verhext - in den Ornder schreibts nicht rein. ABER ich glaube ich muss sowieso aufpassen - es kann nämlich auch sein, dass ich den Ordner
ggf. irgendwie falsch angelegt habe - mit systemrechten oder so. DAS kann dann ggf. dazu fuehren dass ich dann am Ende eines erreiche.
Dass ich Rechtprobleme bekomme und dann der Ordner nicht mehr beschrieben wird & werden kann.
Frage also - wie kann ich das denn umgehen - wie kan ich (jetzt an dieser Stelle) das Problem umgehen und das ganze so einrichten dass auf jeden FALL in
einen separaten Ordner geschrieben wird!?
Dazu koennte ich doch einen Ordner einrichten der ausserhalb lieght - ausserhalb von
Frage - wie müsste denn dann die Zeile aussehen - diese hier ...
Freu mich auf einen Tipp
viele Gruesse Lin
wollte mich mal wieder melden...
hab eine Aufgabe - moechte von web-sites (2500) screenshots machen - brauche diese als Thumbnails...
Also ich habe ein Verzeichnis mit Urls - das nenne ich mal urls.txt soweit so gut.
Das sieht dann also so aus:
Code:
http://www.unifr.ch/sfm
http://www.zug.phz.ch
http://www.schwyz.phz.ch
http://www.luzern.phz.ch
http://www.schwyz.phz.ch
http://www.phvs.ch
http://www.phtg.ch
http://www.phsg.ch
http://www.phsh.ch
http://www.phr.ch
http://www.hepfr.ch/
http://www.phbern.ch
Dazu hab ich folgenden Code - der läuft auch nicht schlecht!
Code:
#!/usr/bin/perl
use strict;
use warnings;
use WWW::Mechanize::Firefox;
my $mech = new WWW::Mechanize::Firefox();
open my $urls, '<', 'urls.txt' or die $!;
while (<$urls>) {
chomp;
next unless /^http/i;
print "$_\n";
$mech->get($_);
my $png = $mech->content_as_png;
my $name = $_;
$name =~ s#^http://##i;
$name =~ s#/##g;
$name =~ s/\s+\z//;
$name =~ s/\A\s+//;
$name =~ s/^www\.//;
$name .= ".png";
open(my $out, '>', "/images/$name")or die $!;
binmode $out;
print $out $png;
close $out;
sleep 5;
}
alles liegt in diesem Ordner drinne:
Code:
/home/martin/perl
Code:
/home/martin/perl/images
- es macht immer alles aber nicht das was ich will.
M.a.W. es ist wie verhext - in den Ornder schreibts nicht rein. ABER ich glaube ich muss sowieso aufpassen - es kann nämlich auch sein, dass ich den Ordner
ggf. irgendwie falsch angelegt habe - mit systemrechten oder so. DAS kann dann ggf. dazu fuehren dass ich dann am Ende eines erreiche.
Dass ich Rechtprobleme bekomme und dann der Ordner nicht mehr beschrieben wird & werden kann.
Frage also - wie kann ich das denn umgehen - wie kan ich (jetzt an dieser Stelle) das Problem umgehen und das ganze so einrichten dass auf jeden FALL in
einen separaten Ordner geschrieben wird!?
Dazu koennte ich doch einen Ordner einrichten der ausserhalb lieght - ausserhalb von
Code:
/home/martin/perl
Frage - wie müsste denn dann die Zeile aussehen - diese hier ...
Code:
open(my $out, '>', "/images/$name")or die $!;
Freu mich auf einen Tipp
viele Gruesse Lin