Wie kann man mit Perl eine Url auf Existenz prüfen ?!
Heavy
- perl
Wie kann man mit Perl eine Url auf Existenz prüfen ?!
hallo
info "# GET URL $url ... "; # Meldung
$ua = LWP::UserAgent->new(); # User-Agent erzeugen
# Request erzeugen
$request = HTTP::Request->new('GET', $url);
# Netzzugriff ausführen
$response = $ua->request($request);
if($response->is_error) { # Fehlerprüfung
err "ERROR Code: ", $response->code(),
" Message: ", $response->message(), "\n";
}
$doc = $response->content(); # Dokument OK
info "OK\n";
frag mich nicht zuviel davon.. das ist aus einem Script und ich glaube es sollte das machen was du willst... glaub.
Hallo Ihr!
Die Lösung von Björn ist IMHO besser, da dort nur der "Kopf" der Seite geholt wird, damit:
$request = HTTP::Request->new('GET', $url);
aber die ganze Seite. Erzeugt also unnütze Netzlast.
Wenn Du allerdings die Seite, wenn sie existsiert, irgendwie weiterverarbeiten willst, ist ein überprüfen mit 'get' ggf. doch besser, denn sonst brauchst Du immer 2 Zugriffe. Ist also je nach Einsatzfall abzuwägen.
Gruß Frank
P.S. Im Archiv findest Du sicher weitere Hinweise... ;-)
Wie kann man mit Perl eine Url auf Existenz prüfen ?!
perldoc lwpcook
#!/usr/bin/perl -w
use strict;
use LWP::Simple;
if (head('http://www.bjoernsworld.de/')) {
# ok document exists
}