Jump to content

[résolu] [perl] Erreur 400


Recommended Posts

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 !

Link to comment
Share on other sites

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 :)

;)

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...