pierrickg Posté(e) le 1 novembre 2006 Partager Posté(e) le 1 novembre 2006 Bonjour, voilà, j'ai une BD mySQL dans laquelle chope des liens vers des sites internets et je veux les vérifier. Je fais donc après un tambouille pour la BD puis : use DBI(); require LWP::UserAgent; require HTTP::Request; require HTTP::Response; # ?? while ($data = $sth->fetchrow_hashref()) { # test url $url = $data->{'url'}; $etat = &check_url($url); print "<BR>$etat"; } avec la fonction : sub check_url{ my ($url); $url = $_[0]; my $ua = LWP::UserAgent->new; $ua->timeout(15); $ua->agent('Lueur.org/LaVague'); $ua->env_proxy; my $response = $ua->get('$url'); if ($response->is_success) { return "ok"; } else { return $response->code; } } et là j'ai erreur 400 pour tous les liens et je ne sais pas quoi faire ! Lien vers le commentaire Partager sur d’autres sites More sharing options...
pierrickg Posté(e) le 1 novembre 2006 Auteur Partager Posté(e) le 1 novembre 2006 en fait ça marche mais il faut faire gaffe aux ' et " !!! dans $ua->get('$url'); mais en fait un truc en moins de lignes donne la même chose et évite les attentes trop longues : my $ua = LWP::UserAgent->new; $ua->timeout(15); $ua->agent('Lueur.org/LaVague'); $ua->env_proxy; my $response = $ua->get("$url"); if ($response->is_success) { return "ok"; } else { return $response->code; } si ça peut vous servir :) Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 2 novembre 2006 Partager Posté(e) le 2 novembre 2006 Merci pour la réponse Je rajoute [perl] et [résolu] (et des balises code) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.