La fonction follow_link
wobot
-
wobot -
wobot -
Bonjour,
Cela concerne la fonction follow_link: J'essaye d'utiliser une deuxième fois la fonction sur une page que j'avais déjà "follow" avec cette même fonction donc. J'ai utilisé d'abord la méthode avec get mais ça a pas marché donc j'ai tenté celle proposée par le site metacpan (voir pièce jointe) mais l'invite répond "link not found at projet.pl line 22" et pourtant, le lien est bien présent dans le code source de la page.
Quelqu'un pourrait m'aider? Merci d'avance.
Cela concerne la fonction follow_link: J'essaye d'utiliser une deuxième fois la fonction sur une page que j'avais déjà "follow" avec cette même fonction donc. J'ai utilisé d'abord la méthode avec get mais ça a pas marché donc j'ai tenté celle proposée par le site metacpan (voir pièce jointe) mais l'invite répond "link not found at projet.pl line 22" et pourtant, le lien est bien présent dans le code source de la page.
Quelqu'un pourrait m'aider? Merci d'avance.
use LWP::Simple;
use PerlIO::locale;
use HTML::TreeBuilder;
use WWW::Mechanize;
binmode STDOUT, ':locale';
use strict;
use warnings;
print "Entrez le nom du premier acteur: ";
my $acteur1 = <STDIN>;
print "Entrez le nom du premier acteur: ";
my $acteur2 = <STDIN>;
print "Nous allons comparer la filmographie de $acteur1 et $acteur2";
my $lien1 = "https://www.imdb.com/find?s=nm&q=$acteur1";
my $mech = WWW::Mechanize->new();
$mech->get($lien1);
$mech->follow_link( url_regex => qr/nm0/i );
$mech->follow_link( url_regex => qr/act_/i );
print $mech->content;
A voir également:
- La fonction follow_link
- Fonction si et - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Fonction remplacer sur word - Guide
- Fonction somme excel - Guide
2 réponses
Salut wobot,
Il y a 20 lignes dans ce que tu as posté, pas 22, alors on ne sait pas à quelle ligne le message d'erreur se réfère.
En supposant qu'il s'agisse de la 2ème ligne d'appel à
Vérifie les liens présents sur la page récupérée après le premier appel à
Tu devrais aussi lire https://www.imdb.com/conditions?ref_=ft_cou pour t'assurer que ce tu fais est conforme aux conditions d'utilisation de ce site.
Dal
Il y a 20 lignes dans ce que tu as posté, pas 22, alors on ne sait pas à quelle ligne le message d'erreur se réfère.
En supposant qu'il s'agisse de la 2ème ligne d'appel à
follow_link(), ce message signifie qu'aucune URL dans un lien de la page que tu as récupéré ne correspond à ton critère de recherche correspondant "act_".
Vérifie les liens présents sur la page récupérée après le premier appel à
follow_link()avec la méthode
links()(récupère les dans un tableau et affiche son contenu).
Tu devrais aussi lire https://www.imdb.com/conditions?ref_=ft_cou pour t'assurer que ce tu fais est conforme aux conditions d'utilisation de ce site.
Dal
c'est bizarre, l'invite me répond "WWW::Link=ARRAY(0x43b5628) quand j'utilise la méthode links(). Ca signifie quoi?
Merci d'avance
https://perlmaven.com/perl-arrays
Par exemple :
Comme tu dis, je crois qu'IMDB bloque le truc.
Essaye ceci :
Par contre, ça reprend des liens inutiles (genre ceux en bas de page) mais pas les liens de la filmographie de l'acteur.
C'est caché volontairement par le site tu crois?