my $ok = 0;
$m->cookie_jar()->scan( sub { $ok++ if $_[1] eq 'SID' } );
die $m->res->status_line unless $ok;
my $nurl = $m->res()->content;
$nurl =~ s/^.*<base href="(https:\/\/mail.google.com\/mail\/h\/[0-9a-z]+\/)">.*$/1ドル/s;
$m->get($nurl.'?ui=html&zy=j&s=m');
die $m->res->status_line unless $m->success;
$m->form_number (2);
CHECKBOX: foreach my $i ($m->current_form->find_input("t", "checkbox"))
{
foreach my $val ($i->possible_values())
{
next unless defined $val;
$i->value($val);
}
}
$m->click("nvp_a_us");
die $m->res->status_line unless $m->success;
Cette version va récupérer le mot de passe correspondant au compte jabber directement dans kwallet pour ne pas le stocker en clair dans le script, mais si tu n'utilises pas kwallet, tu peux juste faire
my $pwd="blablabla";
Pense aussi à remplacer toto par ton nom d'utilisateur chez toi, et toto.titi par ton nom d'utilisateur gmail.
[^] # Re: desactiver l'antispam?
Posté par Florent Bayle . En réponse au journal Tiens... gmail a une nouvelle fonctionnalité !. Évalué à 1.
#! /usr/bin/perl
use strict;
use warnings;
use WWW::Mechanize;
my $m = WWW::Mechanize->new;
my $kwid = `/usr/bin/dcop --user toto --all-sessions kded kwalletd open kdewallet 1`;
chomp ($kwid);
my $pwd = `/usr/bin/dcop --user toto --all-sessions kded kwalletd readPassword $kwid Kopete "Account_JabberProtocol_toto.titi\@gmail.com"`;
chomp ($pwd);
$m->agent("");
$m->get('https://mail.google.com/mail/');
die $m->res->status_line unless $m->success;
$m->form_number (1);
$m->set_fields (Email => 'toto.titi', Passwd => $pwd);
$m->submit();
die $m->res->status_line unless $m->success;
my $ok = 0;
$m->cookie_jar()->scan( sub { $ok++ if $_[1] eq 'SID' } );
die $m->res->status_line unless $ok;
my $nurl = $m->res()->content;
$nurl =~ s/^.*<base href="(https:\/\/mail.google.com\/mail\/h\/[0-9a-z]+\/)">.*$/1ドル/s;
$m->get($nurl.'?ui=html&zy=j&s=m');
die $m->res->status_line unless $m->success;
$m->form_number (2);
CHECKBOX: foreach my $i ($m->current_form->find_input("t", "checkbox"))
{
foreach my $val ($i->possible_values())
{
next unless defined $val;
$i->value($val);
}
}
$m->click("nvp_a_us");
die $m->res->status_line unless $m->success;
Cette version va récupérer le mot de passe correspondant au compte jabber directement dans kwallet pour ne pas le stocker en clair dans le script, mais si tu n'utilises pas kwallet, tu peux juste faire
my $pwd="blablabla";
Pense aussi à remplacer toto par ton nom d'utilisateur chez toi, et toto.titi par ton nom d'utilisateur gmail.