Etant un profane du langage perl, j'essaye de construire un robot de
connection automatique à ma console d'administration afin de télécharger
automatiquement tous les mois (via un cron) ma facture pour la classer
dans mes archives. A la main c'est pénible. Puis bon l'informatique doit
servir à quelque chose.
J'ai bien trouvé un début de piste via l'article suivant : "Construire
des robots pour le web" à l'adresse suivante :
http://articles.mongueurs.net/magazines/linuxmag75.html
Seulement j'ai suivi les conseils mais point d'accès à ma console ou
page personnalisée. Cela étant voici mon script
: (ce n'est qu'un début)
#!/usr/bin/perl
use strict;
use warnings;
use WWW::Mechanize;
my $m = WWW::Mechanize->new;
# formulaire de login de free
$m->get ('http://subscribe.free.fr/login/');
die $m->res->status_line unless $m->success;
# remplissage et validation
$m->set_fields(
login => '----------@freeadsl' ,
pass => '----------' ,
);
$m->click;
die $m->res->status_line unless $m->success;
# vérification accès page gestion personnelle
print localtime() . " Connection réussie!\n"
if $m->content =~ /FACTURES \/ SUIVI DE CONSOMMATION/;
Bien qu'ayant bien renseigné les champs avec mes identifiants et mot de
passe.....rien. Enfin perl me renvoi le message d'alerte suivant :
No such field 'pass' at /usr/share/perl5/WWW/Mechanize.pm line 1151
Pourtant $mech-dump http://subscribe.free.fr/login/ me renvoi
post http://subscribe.free.fr/login/login.pl
login= (test)
pass= (password)
ok=login (image)
Je remercie par avance les contributeurs désireux de m'aider.
Amicalement vôtre.
Etant un profane du langage perl, j'essaye de construire un robot de connection automatique à ma console d'administration afin de téléch arger automatiquement tous les mois (via un cron) ma facture pour la classer dans mes archives. A la main c'est pénible. Puis bon l'informatique doit servir à quelque chose.
J'ai bien trouvé un début de piste via l'article suivant : "Construire des robots pour le web" à l'adresse suivante : http://articles.mongueurs.net/magazines/linuxmag75.html [...]
Bien qu'ayant bien renseigné les champs avec mes identifiants et mot de passe.....rien. Enfin perl me renvoi le message d'alerte suivant : No such field 'pass' at /usr/share/perl5/WWW/Mechanize.pm line 1151
Cette page contient plusieurs formulaires...
Pourtant $mech-dump http://subscribe.free.fr/login/ me renvoi post http://subscribe.free.fr/login/login.pl login= (test) pass= (password) ok=login (image)
Certes... mais avant il y a aussi le formulaire de recherche 'google'. Il faut indiquer à WWW::Mechanize le formulaire à utiliser (par défaut, il choisit le premier). Ici, les formulaires n'ont pas de noms. Donc soit vous codez en dur le numéro (2) via :
$m->form_number(2);
avant les appels à 'set_fields'. Soit vous utilisez le résultat de '$m->forms' pour analyser les différents formulaires et choisir celui que vous souhaitez...
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>
Etant un profane du langage perl, j'essaye de construire un robot de
connection automatique à ma console d'administration afin de téléch arger
automatiquement tous les mois (via un cron) ma facture pour la classer
dans mes archives. A la main c'est pénible. Puis bon l'informatique doit
servir à quelque chose.
J'ai bien trouvé un début de piste via l'article suivant : "Construire
des robots pour le web" à l'adresse suivante :
http://articles.mongueurs.net/magazines/linuxmag75.html
[...]
Bien qu'ayant bien renseigné les champs avec mes identifiants et mot de
passe.....rien. Enfin perl me renvoi le message d'alerte suivant :
No such field 'pass' at /usr/share/perl5/WWW/Mechanize.pm line 1151
Cette page contient plusieurs formulaires...
Pourtant $mech-dump http://subscribe.free.fr/login/ me renvoi
post http://subscribe.free.fr/login/login.pl
login= (test)
pass= (password)
ok=login (image)
Certes... mais avant il y a aussi le formulaire de recherche 'google'.
Il faut indiquer à WWW::Mechanize le formulaire à utiliser (par
défaut, il choisit le premier). Ici, les formulaires n'ont pas de
noms. Donc soit vous codez en dur le numéro (2) via :
$m->form_number(2);
avant les appels à 'set_fields'. Soit vous utilisez le résultat de
'$m->forms' pour analyser les différents formulaires et choisir celui
que vous souhaitez...
--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>
Etant un profane du langage perl, j'essaye de construire un robot de connection automatique à ma console d'administration afin de téléch arger automatiquement tous les mois (via un cron) ma facture pour la classer dans mes archives. A la main c'est pénible. Puis bon l'informatique doit servir à quelque chose.
J'ai bien trouvé un début de piste via l'article suivant : "Construire des robots pour le web" à l'adresse suivante : http://articles.mongueurs.net/magazines/linuxmag75.html [...]
Bien qu'ayant bien renseigné les champs avec mes identifiants et mot de passe.....rien. Enfin perl me renvoi le message d'alerte suivant : No such field 'pass' at /usr/share/perl5/WWW/Mechanize.pm line 1151
Cette page contient plusieurs formulaires...
Pourtant $mech-dump http://subscribe.free.fr/login/ me renvoi post http://subscribe.free.fr/login/login.pl login= (test) pass= (password) ok=login (image)
Certes... mais avant il y a aussi le formulaire de recherche 'google'. Il faut indiquer à WWW::Mechanize le formulaire à utiliser (par défaut, il choisit le premier). Ici, les formulaires n'ont pas de noms. Donc soit vous codez en dur le numéro (2) via :
$m->form_number(2);
avant les appels à 'set_fields'. Soit vous utilisez le résultat de '$m->forms' pour analyser les différents formulaires et choisir celui que vous souhaitez...
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>