et j'ai comme r=C3=A9sultat : HTML::Form::TextInput=3DHASH(0x3226310)HTML::=
Form::TextInput=3DHASH(0x3226370)HTML::Form::TextInput=3DHASH(0x32259c8)HTM=
L::Form::TextInput=3DHASH(0x32258c0)HTML::Form::SubmitInput=3DHASH(0x322653=
8)HTML::Form::SubmitInput=3DHASH(0x31ca3e8)HTML::Form::TextInput=3DHASH(0x3=
225e18)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Marc SCHAEFER
Fabrice wrote:
my $form = ( HTML::Form->parse( $res->decoded_content, $base ) )[0]; @inputs = $form->inputs; print @inputs; et j'ai comme résultat : HTML::Form::TextInput=HASH(0x3226310)HTML::Form::TextInput=HASH(0x3226370)HTML::Form::TextInput=HASH(0x32259c8)HTML::Form::TextInput=HASH(0x32258c0)HTML::Form::SubmitInput=HASH(0x3226538)HTML::Form::SubmitInput=HASH(0x31ca3e8)HTML::Form::TextInput=HASH(0x3225e18) une idée du pourquoi ?
http://search.cpan.org/~gaas/HTML-Form-6.03/lib/HTML/Form.pm me dit que la méthode HTML::Forms::inputs retourne un tableau de classes dérivées de HTML::Form qui représentent en modèle orienté-objet les différents objets du formulaire, ou, plutôt, les paires noms-valeurs. Lire http://search.cpan.org/~gaas/HTML-Form-6.03/lib/HTML/Form.pm#INPUTS pour plus d'informations et exemples. Je suppose, sans avoir essayé, que: foreach my $input ($form->inputs) { print $input->name(), " -> ", $input->value(), "n"; } donne probablement la liste des clés-valeurs soumises via le formulaire. NB: si j'avais connu ce module Perl quand je faisais de la programmation CGI avec, je l'aurais utilisé; aujourd'hui je recommande Mojolicious (qui peut bien sûr l'utiliser).
print @inputs;
et j'ai comme résultat : HTML::Form::TextInput=HASH(0x3226310)HTML::Form::TextInput=HASH(0x3226370)HTML::Form::TextInput=HASH(0x32259c8)HTML::Form::TextInput=HASH(0x32258c0)HTML::Form::SubmitInput=HASH(0x3226538)HTML::Form::SubmitInput=HASH(0x31ca3e8)HTML::Form::TextInput=HASH(0x3225e18)
me dit que la méthode HTML::Forms::inputs retourne un tableau de
classes dérivées de HTML::Form qui représentent en modèle orienté-objet
les différents objets du formulaire, ou, plutôt, les paires noms-valeurs.
Lire http://search.cpan.org/~gaas/HTML-Form-6.03/lib/HTML/Form.pm#INPUTS
pour plus d'informations et exemples.
donne probablement la liste des clés-valeurs soumises via le formulaire.
NB: si j'avais connu ce module Perl quand je faisais de la programmation
CGI avec, je l'aurais utilisé; aujourd'hui je recommande Mojolicious
(qui peut bien sûr l'utiliser).
my $form = ( HTML::Form->parse( $res->decoded_content, $base ) )[0]; @inputs = $form->inputs; print @inputs; et j'ai comme résultat : HTML::Form::TextInput=HASH(0x3226310)HTML::Form::TextInput=HASH(0x3226370)HTML::Form::TextInput=HASH(0x32259c8)HTML::Form::TextInput=HASH(0x32258c0)HTML::Form::SubmitInput=HASH(0x3226538)HTML::Form::SubmitInput=HASH(0x31ca3e8)HTML::Form::TextInput=HASH(0x3225e18) une idée du pourquoi ?
http://search.cpan.org/~gaas/HTML-Form-6.03/lib/HTML/Form.pm me dit que la méthode HTML::Forms::inputs retourne un tableau de classes dérivées de HTML::Form qui représentent en modèle orienté-objet les différents objets du formulaire, ou, plutôt, les paires noms-valeurs. Lire http://search.cpan.org/~gaas/HTML-Form-6.03/lib/HTML/Form.pm#INPUTS pour plus d'informations et exemples. Je suppose, sans avoir essayé, que: foreach my $input ($form->inputs) { print $input->name(), " -> ", $input->value(), "n"; } donne probablement la liste des clés-valeurs soumises via le formulaire. NB: si j'avais connu ce module Perl quand je faisais de la programmation CGI avec, je l'aurais utilisé; aujourd'hui je recommande Mojolicious (qui peut bien sûr l'utiliser).
Pourquoi t'embetes-tu a tout faire a la main ? utilise direcement WWW::Mechanize, il fait a peu pres tout pour toi.
Marc SCHAEFER
Marc Espie wrote:
Pourquoi t'embetes-tu a tout faire a la main ? utilise direcement WWW::Mechanize, il fait a peu pres tout pour toi.
Ou Mojo::UserAgent, petit exemple non relié au problème: my $ua = new Mojo::UserAgent(); my %truc $ua->get($base_url)->res->dom->find('td > a') ->grep(sub { $_->attr('href') =~ /google.com/ }) ->map(sub { $_->attr('href') => length($_->attr('href')) }); # truc contiendra un tableau associatif # url => longueur d'URL # pour tous les URLs attributs href de tous les éléments a dont l'URL # est google.com et le parent est un élément td dans le document pointé # par l'URL $base_url # (dans grep et map et foreach, par défaut dans Perl, # $_ est la variable de contrôle)
Marc Espie <espie@lain.home> wrote:
Pourquoi t'embetes-tu a tout faire a la main ? utilise direcement
WWW::Mechanize, il fait a peu pres tout pour toi.
Ou Mojo::UserAgent, petit exemple non relié au problème:
# truc contiendra un tableau associatif
# url => longueur d'URL
# pour tous les URLs attributs href de tous les éléments a dont l'URL
# est google.com et le parent est un élément td dans le document pointé
# par l'URL $base_url # (dans grep et map et foreach, par défaut dans Perl,
# $_ est la variable de contrôle)
Pourquoi t'embetes-tu a tout faire a la main ? utilise direcement WWW::Mechanize, il fait a peu pres tout pour toi.
Ou Mojo::UserAgent, petit exemple non relié au problème: my $ua = new Mojo::UserAgent(); my %truc $ua->get($base_url)->res->dom->find('td > a') ->grep(sub { $_->attr('href') =~ /google.com/ }) ->map(sub { $_->attr('href') => length($_->attr('href')) }); # truc contiendra un tableau associatif # url => longueur d'URL # pour tous les URLs attributs href de tous les éléments a dont l'URL # est google.com et le parent est un élément td dans le document pointé # par l'URL $base_url # (dans grep et map et foreach, par défaut dans Perl, # $_ est la variable de contrôle)