[Perl] WWW::Mechanize

Fermé
startx - 27 mars 2007 à 02:40
 Judicael - 30 mars 2009 à 17:21
Bonjour a tous,

Tout d'abord merci a tous ceux qui font vivre ccm.
Voila, j'ai l'habitude de chercher par moi meme mais la je suis au bout.
Je voudrais recuperer des liens HTML grace a WWW::Mechanize. Mais mon probleme est que la seule chose qui differencie ces liens est l'image attribuée.
ex:
toto.gif => https://www.toto.com/
toto.gif => https://www.tata.com/
tutu.gif => http://www.titi.com

Je voudrais recuperer uniquement www.toto.com et www.tata.com. Je ne trouve rien dans follow_all_links qui permette de faire ca.
Suis je obligé d'utiliser un autre module juste pour cette problematique et si oui, lequel est le plus adapté. Ou y a t'il qqchose qui m'a echapé

merci.

1 réponse

utilise un parseur xml!

###################initialisation du parseur

my $parser = XML::LibXML->new();
$parser->recover_silently(1);

my $doc = $parser->parse_html_string($m->content);

my $xc = XML::LibXML::XPathContext->new($doc);

my @judicael = $xc->findnodes('definir le chemin vers ton lien/@href');

Exemple : $xc->findnodes('/html/body//div[@id="container"]//div[@id="ctl00_content1_panelmain"]/div[@id="pdContent"]/div[@class="productImage"]//img/@src') ;

le // signifie qu'il y'a plusieurs sauts à faire.
0