Vu qu’il y a de la demande pour ça, voici la source.
#!/usr/bin/perl
use CGI;
use WWW::Mechanize;
use Encode;
$q = new CGI;
$c = $q->param(‘code’);
$a = $q->param(‘article’);
print « Content-type: text/html\n\n »;
$www = new WWW::Mechanize(agent => $ENV{‘HTTP_USER_AGENT’});
$www->get(‘http://www.legifrance.gouv.fr/initRechCodeArticle.do’);
$www->form_number(2);
($opt) = grep { $_ =~ /$c/i } $www->content =~ /(<option value=.*?<\/option>)/g;
unless ($opt) {
$c = decode(‘utf-8’,$c);
($opt) = grep { $_ =~ /$c/i } $www->content =~ /(<option value=.*?<\/option>)/g;
}
$opt =~ /value= »(.*?) »/;
$www->field(‘champCode’,$1);
$www->field(‘champNumArticle’,$a);
$www->submit();
$url = $www->uri();
if ($www->title() =~ /Article/) {
$url =~ s/^\.\/\./http:\/\/legifrance.gouv.fr/;
print « Content-type: text/html\n\n<meta http-equiv=\ »Refresh\ » content=\ »0;url=$url\ » /> »;
} else {
print « Content-type: text/plain\n\nNo Result »;
}