Le but de ce billet est donc de vous présenter un script perl (en fait un module accompagné d'un script exemple) qui vous permettra de récupérer le solde de l'ensemble de vos comptes LCL accessibles en ligne ainsi que les opérations des 45 derniers jours pour chacun d'entre eux. Pour faire fonctionner ce script vous devez :
- avoir un compte LCL et un accès au web (normalement par défaut)
- avoir perl installé ainsi que le module
LWP
- déposer le fichier LCL.pm de l'archive là par exemple :
/usr/share/perl5/Finance/Bank
- éditer
lcl2csv.pl
et renseigner vos login et mot de passe - faire un éventuellement un
chmod +x lcl2csv.pl
- lancer le script :
./lcl2csv.pl
Vous n'avez pas besoin :
- de rentrer dans le détail de la programmation perl, le fichier d'exemple permet, en quelques lignes, un export CSV des opérations de vos comptes.
- d'être abonné à l'accès web étendu LCL (du genre avoir la possibilité de télécharger les écritures sur vos compte), ce script module fait sans.
le script est dispo là : http://teddyber.info/lcl (prenez le plus récent a priori). Tout commentaire, rapport de bugs, demande de fonctionnalité est le bienvenu.
PS : Ceci est mon premier script perl, je vous remercie donc de votre indulgence face au manque d'efficacité de celui-ci, à la syntaxe hésitante, etc. mais suis ouvert à toute proposition d'amélioration.
PPS : bientôt je mets le module en ligne sur CPAN (d'ailleurs, si vous avez des outils à me conseiller pour ce faire, je suis intéressé)
Edit du 07/10/06 : Nouvelle version qui permet de récupérer les détails de relevé de CB lorsq'uil n'y a qu'une seule carte rattachée au compte, qui gère les comptes type Codevi. Le zip inclus également un script permettant l'export au format qif, pour import dans Gnucash ou Grisbi pa exemple. Merci à Jice pour son aide (tout le boulot en fait).
Edit du 01/12/2006 : Nouvelle version qui gère correctement le nom des comptes (compte de dépôts, PEL, cerise, etc.)
Edit du 11/07/2008 : Nouvelle version by-passant les nouveautés de début Juillet.
1 De Villeur -
Bonjour, Pour ma part, je suis en train d'initier un procé au LCL ... longue histoire ... Mais en attendant j'ai commencé à développer un script php utilisant curl pour faire, ce que tu fais ... Malheureusement, je n'arrive pas à récuperer la page ... je pense que je n'arrive pas à passer les bonnes options CURL, enfin chais pas trop !. Le but final de mon scripts php, c'est de recevoir un email uniquement si j'ai des mouvements sur mon compte. (Free permet d'envoyer des mails, pour la crontab, j'ai utilisé http://www.webcron.org/). Une extention possible serai un formatage de sortie pour ms money .... J'ai énormément avancé, et je retrouve pas mal de chose dans ton code perl, même si je n'en ai jamais fait. (je suis pas débutant en informatique, mais je sèche complètement sur la partie CURL.) Je ne sais pas si ma proposition est la bienvenue ici, mais je cherche un petit coup de pouce, une collaboration. Je voudrais aussi étendre le script à : La banque postale, covefi, et pourquoi pas des trucs comme la Sécu (amelie.fr) et d'autres.
Pour ce qui est du droit ou pas de le faire, je pense que tout ce que fait le script, on peut le faire à la main. J'ai le droit de rentrer mon mot de passe, de surfer, de sauvegarder la page HTML relative à mon compte, d'en faire ce que je veux ... donc , pour un usage privé, ok. Par contre, diffuser le script, c'est tout autre chose ...
Fred
2 De tchoua -
Bonjour,
C'est exactement ce je cherchais. Mais tu devrais donner une description sommaire des fonctions implémentés dans le script et un exemple pour appeler ces fonctions. Une sort de document de démarage.
François
Edit de teddyber : Euh dans le zip, il y a un script exemple, et les fonctions utilisées dans l'exemple ont des noms suffisamment explicites, je pense, pour comprendre ce qu'elles font. et puis le .pm contient la doc au format pod donc bon...
3 De tchoua -
Je ne parviens pas a executer le script ./lcl2qif.pl. J'obtiens l'erreur suivante. Pour le script csv aucun problème.
./lcl2qif.pl !Type:Bank D23/12/2006 LCompte de d�p�ts ^ Can't locate object method "as_qif" via package "Finance::Bank::LCL::Statement" at ./lcl2qif.pl line 15.
Peux tu me dire ce que veut cette erreur ?
Merci Cordialment
Francois
Edit de teddyber : cette erreur vient du fait que le package en ligne est mauvais :o) Un nouveau du jour est là pour y remédier. désolé :o)
4 De tchoua -
Bonjour,
Je me permet de te recontacter car la librairie perl que tu as écrite ne fonctionne plus. J'obteins l'erreur suivante : Error at https://particuliers.secure.LCL.fr/everest/UWBI/UWBIAccueil?DEST=IDENTIFICATION&agenceId=XXXX&compteId=XXXXX&CodeId=XXXXXX
J'ai mis XXXX a la place de mes identifiants. Il semble que l'URL de connexion ai changé. J'ai regarder le code source de la page de connexion mais l'URL utilisé dans le script est bien la même que celle appelé lors de la soumission du formulaire HTML. Les noms des paramètres sont bon eux aussi.
Je ne comprends pas ce qu'il se passe. Tout a bien marché depuis des années et maintenant ca ne fonctionne plus.
As tu une idée de l'origine du PB ?
Merci
Cordialement,
Francois
5 De teddyber -
J'ai remarqué ce soucis depuis quelques jours effectivement. Ton message m'a décidé à prendre le temps de la correction.
Visiblement ils ont fait un "petite" modification pour refuser de renvoyer la page si on ne mets pas de headers, lesquels je ne sais pas, je n'ai pas cherché à comprendre j'en ai mis plein! ;o)
Problème corrigé dans la dernière version toujours à la même adresse
6 De tchoua -
Bonjour Teddyber,
Je viens de récupéré ton script mis a jour. Il semble que tu ai oublié la fonction as_qif() dans LCL.PM.
Perso je l'ai rajouté et tout marche super bien.
:-) merci beaucoup pour ce script.
Cordialement.
Francois
Edit de teddyber : merci pour l'info, corrigé dans la nouvelle version a priori.
7 De tchoua -
Bonjour,
Il semble que LCL ait encore fait des changement sur leur site web. Il ont changer l'url d'accès a la page de synthèse, pour faire marcher le script j'ai du changer dans le fichier LCL.pm les lignes suivantes (ligne 132) : #liste des comptes #nouvelle adresse de la page de synthèse https://particuliers.secure.lcl.fr/outil/UWSP/Synthese/accesSynthese #my $req = 'https://particuliers.secure.lcl.fr/everest/UWSP/UWSPAccueil?DEST=SYNTHESEPAR&FCTEL=SYNTHESECOMPTES'; my $req = 'https://particuliers.secure.lcl.fr/outil/UWSP/Synthese/accesSynthese';
cordialement,
Francois
8 De CloneVince -
Bonjour, il semblerait que LCL ait encore modifié l'url d'accès à la page de synthèse.
Voici l'erreur :
Error at https://particuliers.secure.lcl.fr/...
404 Not Found
Aborting at /usr/share/perl5/LCL.pm line 224.
Si quelqu'un peut éclairer ma lanterne, merci d'avance ^^
9 De lalebarde -
Salut,
Merci pour ce script. Mais je n'arrive pas à le faire marcher. Au début, il partait en erreur. J'ai fait des modifs (entêtes complétées - grâce au navigateur Opera et à la fonction "inspecter l'élément - équivalent de firebug pour firefox) et ça ne fait plus d'erreur, mais ça ne me sort rien. Quelqu'un a-t-il un script à jour qui marche ?