[Linux-bruxelles] Consommation Scarlet
Gaëtan Frenoy
gaetan at frenoy.net
Ven 17 Mar 10:50:16 CET 2006
Salut,
Le Sat, 11 Mar 2006 10:24:10 +0100, Gaëtan Frenoy a écrit:
> Est-ce que l'un d'entre vous aurait, par le plus grand des hasards,
> déjà écrit quelques lignes en perl et WWW::Mechanize pour récupérer son
> quota lu sur http://mon.scarlet.be et se l'envoyer par e-mail via un
> petit cron tous les matins ?
Apparemment non.
Pour info, j'ai écrit ceci (note: ne pas oublier de dire "waaoow"
tout haut) :
-----
#!/usr/bin/perl -w
use WWW::Mechanize;
my $username = 'votre_user';
my $password = 'votre_mot_de_passe';
my $m = WWW::Mechanize->new();
$m->get('http://customercare.scarlet.be/logon.do?language=fr');
$m->field('username', $username);
$m->field('password', $password);
$m->submit();
$m->follow_link(text => 'Consommation');
my $c = $m->content;
for ($c) {
s#.*<tr>.*<th class="left">Total pour cette p.riode</th>(.*?)</tr>.*#$1#sgm;
s/^\s+//;
s/\s+$//;
s/>[\s\n\r]+</></smg;
s#<th class="digit">([0-9]+[,0-9]*) +GB</th>#$1\n#mg;
}
@res = split(/\n/, $c);
my $out = "Consommation :\n";
$out .= "Down = ${res[0]} GB\n";
$out .= "Up = ${res[1]} GB\n";
$out .= "Total = ${res[2]} GB\n";
print($out);
-----
Puis j'ai tapé un petit fichier dans /etc/cron.d qui contient :
-----
18 07,12,20 * * * username /usr/local/sbin/get_conso.pl | mail -s "Consommation Scarlet" -a "From: Scarlet Checker <votre_email>" votre_email
-----
Bon, c'est loin d'être top et à 1000 lieues de ce que j'imagine
mais il faut bien commencer quelque part...
Espérons que ça progresse, si quelqu'un a des idées/suggestions,
elles sont les bienvenues.
À bientôt.
--
Gaëtan
Plus d'informations sur la liste de diffusion Linux-bruxelles