Un exemple uniligne utilisant Mojo::DOM (en fait, il utilise WWW::Mechanize::Query dont la méthode dom retourne un objet Mojo::DOM) :
$ perl -MWWW::Mechanize::Query -E '$m = WWW::Mechanize::Query->new(); $m->get("http://www.developpez.net/forums/d1486484/autres-langages/perl/langage/programme-perl-html"); print join "", $m->dom->all_contents->grep(sub { $_->node eq "text" })'
L'uniligne récupère la page de cette discussion ($m->get("...")), sélectionne tous les noeuds de type text du DOM HTML (all_contents->grep(sub { $_->node eq "text") et les affiche.
Le résultat est sans doute à "retravailler" (beaucoup de retours à la ligne) et il te faudra peut-être sélectionner seulement certains éléments HTML à récupérer (fonction find utilisant le formalisme des sélecteurs CSS3, voir doc de jQuery par exemple). C'est extrêmement facile d'utilisation : une fois qu'on y a goûté, difficile de s'en passer.
Partager