Convertisseur de relevés de compte BNP (pdf->csv)

memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018 - 10 nov. 2013 à 20:22
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018 - 19 avril 2018 à 21:16
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/100231-convertisseur-de-releves-de-compte-bnp-pdf-csv

memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
19 avril 2018 à 21:16
Le code a été repris et mis à jour par une autre personne pour lire les nouveaux relevés, regardez ici :

https://github.com/CdeMills/convertBNP
choumi92 Messages postés 7 Date d'inscription mercredi 26 décembre 2007 Statut Membre Dernière intervention 18 mai 2017
18 mai 2017 à 10:45
on dirait que ca ne fonctionne plus depuis que la banque BNPPARIBAS a changé d'editeur PDF ( police personnalisée )
Il n'a pas marché pour moi. Le fichier pdftotext.exe est dans le même dossier que les releves et le fichier convertBNP.py.

Convertisseur de relevés bancaires BNP Paribas *

PDF -> CSV

Relevés disponibles:
2015: 01 11 12
2016: 01 02 03 04 05 06 07 08 09 10 11 12
2017: 01

[pdf->txt] Conversion : RLV_CHQ_300040079900003580444_20150106.pdf
Traceback (most recent call last):
File "/Users/annaleticiamoras/Desktop/TEMPBNP/convertBNP.py", line 212, in <module>
extraction_PDF(releve, deja_en_txt, temp_list)
File "/Users/annaleticiamoras/Desktop/TEMPBNP/convertBNP.py", line 97, in extraction_PDF
subprocess.call(['pdftotext.exe', '-layout', pdf_file, txt_file])
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 267, in call
with Popen(*popenargs, **kwargs) as p:
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 707, in __init__
restore_signals, start_new_session)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 1326, in _execute_child
raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'pdftotext.exe'
>>>
choumi92 Messages postés 7 Date d'inscription mercredi 26 décembre 2007 Statut Membre Dernière intervention 18 mai 2017
27 oct. 2016 à 10:54
On dirait que c'est au niveau de PDFTOTEXT ( à tester avec la commande CMD ) qu'il faut chercher pourquoi
choumi92 Messages postés 7 Date d'inscription mercredi 26 décembre 2007 Statut Membre Dernière intervention 18 mai 2017
26 oct. 2016 à 10:54
moi aussi ca n'a pas marché à partir de 2016 !
je n'ai pas trouvé ce qui a empeché de fonctionner
Toto
satanas451 Messages postés 1 Date d'inscription vendredi 19 février 2016 Statut Membre Dernière intervention 19 février 2016
19 févr. 2016 à 20:18
Salut memejoueur
J'ai des décomptes `BNP de 2015
Le csv ne contient que la ligne d'en-tete : Date;Opération;Valeur
C'est peu :-)
Un petit don pourrait-il te motiver à m'aider ?...
A+ps
Salutations !

Pour les fichiers jusque décembre 2015, impeccable !

En revanche, j'ai remarqué qu'avec le relevé 2016, cela ne marchait plus. Il semble que le contenu du PDF ait légèrement été modifié.

J'ai regardé de plus près ton code et je pense que le changement impacte la fonction "ajoute_from_TXT" de la classe UnReleve.

Je ne suis pas un pro du Python, mais j'ai essayé de le modifier. Sans trop de succès pour le moment ... :p

Est-ce que de ton côté tu vois d'où vient le soucis ?

Mat
Fonctionne très bien chez moi.

J'ai suivi les consignes, j'ai par contre téléchargé la dernière version de Python.

Merci beaucoup cela m'a été très utile. Je me voyais déja passer une demi journée à la faire à la main ^^
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
10 nov. 2015 à 22:26
Il semble que BNP fourni des relevés PDF avec une mise en page différente de celle que j'avais à l'époque où j'ai créé ce petit programme.
Solutions proposées : quitter cette banque ou apprendre le python, j'ai fait les 2 et j'en suis ravi :)
djiem Messages postés 1 Date d'inscription samedi 16 janvier 2010 Statut Membre Dernière intervention 4 novembre 2015
4 nov. 2015 à 20:36
L'idée est très bonne (aussi bonne que celle de quitter la BNP qui se fout de ses clients) mais malheureusement ça ne marche pas. J'ai téléchargé la dernière version de Python, mais les fichiers convertis en csv ne font qu'1 ko et n'affichent que la première ligne. Il y a-t-il une solution? Merci
agriloisirs Messages postés 1 Date d'inscription mercredi 21 octobre 2015 Statut Membre Dernière intervention 21 octobre 2015
21 oct. 2015 à 19:37
Bonsoir,
Aucune erreur, phyton 3.5 et fichier csv se créer du type "Relevé BNP 2015-06" mais vide avec seulement date opération et valeur.
Je suis sous Windows 7 pro.
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
12 août 2015 à 13:00
Quelle version de système d'exploitation, de python utilisez-vous ?
Quel type de fichier pdf essayez-vous de convertir ?
Avez-vous des messages d'erreur ?
Donnez un maximum d'infos, en retour nous pourrons vous aider à résoudre le problème.
Pratique mais je n'arrive pas à la faire fonctionner ... :-(
L'idée est excellente mais seulement ça ne marche pas ... => Génération d'un fichier csv vide (Le fichier txt intermédiaire ne contient pas de chiffres...).
Message meurtrier du compilateur quand on assigne la première variable d'un tableau.
"La variable est utilisée avant qu'une valeur ne lui ait été assignée.
Une exception complètement nulle peut se produire au moment de l'éxècution."
ET ... impossible ... de copier le fichier obj\Debug... introuvable.
Sans parler des fonctions qui retournent pas de valeur pour tous les chemins de code.
Une exception complètement nulle peut se produire au moment de l'exècution lorsque le résultat est utilisé.
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
23 mai 2015 à 15:53
Ça fonctionnera sur un Mac seulement avec Windows, pas avec OSX.
Application très pratique. Ce serait si simple s'il était possible de le faire directement au-delà d'un historique de 30 jours à partir de l'espace abonné de la BNP. Je dois être masochiste pour être client de la BNP :-)
Soussou80 Messages postés 1 Date d'inscription samedi 16 mai 2015 Statut Membre Dernière intervention 16 mai 2015
16 mai 2015 à 22:32
Bonjour !
Est ce la même procédure que sous mac ?
Merci
fredschecter Messages postés 2 Date d'inscription jeudi 26 mars 2015 Statut Membre Dernière intervention 27 mars 2015
27 mars 2015 à 07:49
Bonjour,

Merci pour votre réponse mais pas de blocage...
Si ce cas vous intéresse (je me suis débrouiller autrement, mais votre solution a l'air tellement simple), je vous laisse mon mail en MP afin que vous puissiez me contacter.
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
26 mars 2015 à 20:09
Bonjour,
C'est peut-être le blocage de Windows concernant les fichiers executables (.exe) provenant d'internet.
Essayez ceci :
- clic droit sur le fichier pdftotext.exe puis "Propriétés"
- en bas de la fenêtre appuyez sur "Débloquer"
- "Appliquer" puis "OK"
fredschecter Messages postés 2 Date d'inscription jeudi 26 mars 2015 Statut Membre Dernière intervention 27 mars 2015
26 mars 2015 à 07:31
Bonjour,

Merci pour cette appli.
J'ai suivi la procédure, mais lorsque j'exécute le script, j'ai un message m'indiquant que le fichier pdftotext.exe est absent.
Il est pourtant dans le même dossier que l'exécutable ainsi que les fichiers .pdf.
Y a-t-il quelque chose qui m'échappe?

Je pourrai vous faire parvenir une capture écran si vous le souhaitez.

Ma version de windows est 8.1 pour info.

Merci par avance pour votre aide.
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
16 mars 2015 à 22:01
Désolé mais je l'ai écrit pour la version 3 ou plus de python. C'est bien précisé dans le descriptif.
La version 2.7 de python ne se comporte pas de la même façon donc je ne la recommande pas pour utiliser ce script.
Hello,
desole pour la reponse tardive. J'utilise la version 2.7. le script fonctionne mais ne me renvoit pas ce que j'ai dans mon releve, les chiffres sont fausses.
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
10 mars 2015 à 19:00
Bonjour, la version 32 bits de pdftotext est disponible ici :
http://sourceforge.net/projects/xpdf.mirror/files/
Bonjour, serait-il possible d'avoir pdfToTxt.exe en 32 bits aussi? je n'arrive pas a le trouver, sur le site de xpdf seule la version 3.04 est disponible
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
28 janv. 2015 à 11:51
Salut,
Je viens de corriger ce bug, re-télécharge l'archive et réessaye pour voir si ça marche maintenant.
Pour info, tu as quelle version de python ?
Salut,

Quand j'execute le programme je tome sur cette erreur :
Traceback (most recent call last):
File "C:\Users\tjsris2\Documents\Perso\Banque\BNP (France)\bnp convertisseur\convertBNP.py", line 224, in <module>
releve.ajoute_from_TXT(txt, annee, mois)
File "C:\Users\tjsris2\Documents\Perso\Banque\BNP (France)\bnp convertisseur\convertBNP.py", line 59, in ajoute_from_TXT
ligne = file.readline()
ValueError: Mixing iteration and read methods would lose data
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
26 nov. 2014 à 18:59
Oui c'est possible, je l'ai fait !
j'ai rajouté une variante du script (convertBNP_4col.py) qui génère un csv à 4 colonnes, en séparant les débits et les crédits.
Y avait juste quelques lignes à modifier, rien de bien méchant.

Bonne journée !
jcdoma Messages postés 1 Date d'inscription mardi 18 novembre 2014 Statut Membre Dernière intervention 18 novembre 2014
18 nov. 2014 à 17:47
Le convertisseur marche très bien félicitations !
dans le fichier de sortie format CSV il y a 3 colonnes, dans la 3ème colonne 'valeur' se trouve les débits et crédits serait-il possible d'obtenir 2 colonnes 1 pour les débits et 1 pour les crédits
D'avance merci
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
1 août 2014 à 16:40
Ok, j'ai inclus la bonne version du fichier pdftotext.exe directement dans l'archive, comme ça c'est réglé. Y a pu besoin de télécharger Xpdf.
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
Modifié par memejoueur le 1/08/2014 à 15:35
Bonjour,

Xpdf a été mis à jour en v3.04 en mai 2014.
J'ai fais ce script en m'appuyant sur la version précédente, la v3.03. Leur mise-à-jour a dû changer quelque chose et convertBNP.py ne reconnait plus correctement les fichiers textes.

Je vais regarder ça de prêt et mettre à jour mon script.
En attendant, il reste utilisable si vous récupérez Xpdf en version 3.03 sur un autre site (clubic par exemple).
Ca ne fonctionne pas pour moi. J'ai des fichiers excel de 1kB avec seulement deux ou trois entrées. Le script ne se termine même pas, il reste bloqué à la dernière ligne et n'affiche pas nettoyage, c'est normal?
Merci pour votre retour.
memejoueur Messages postés 15 Date d'inscription vendredi 1 avril 2011 Statut Membre Dernière intervention 19 avril 2018
2 janv. 2014 à 23:26
J'ai fait une petite mise à jour le 2 janvier 2014 pour corriger un bug dans la fonction affiche() qui plantait avec les relevés du mois de décembre.

L'erreur (ligne 61):
ligne_12[int(i)] = i
La correction :
ligne_12[int(i)-1] = i

On passe donc en v1.0.1.
Rejoignez-nous