42 lines
1.6 KiB
Markdown
42 lines
1.6 KiB
Markdown
# 📄 pdf2csv
|
||
|
||
Convertisseur de fichiers **PDF** en **CSV** basé sur [tabula-py](https://github.com/chezou/tabula-py) et [pandas](https://pandas.pydata.org/), empaqueté dans une image **Docker** légère.
|
||
|
||
Il est conçu pour traiter automatiquement les relevés bancaires PDF (ou autres tableaux PDF similaires) en appliquant des opérations de nettoyage et de fusion avant de produire un fichier CSV unique.
|
||
|
||
---
|
||
|
||
## 🚀 Fonctionnalités du script
|
||
|
||
Le script `convert.py` :
|
||
|
||
1. **Extraction**
|
||
- Utilise `tabula-py` pour extraire les tableaux depuis tous les fichiers PDF du dossier `/data`.
|
||
- Supporte les PDFs multi-pages.
|
||
|
||
2. **Nettoyage des données**
|
||
- Supprime les **3 premières lignes** de chaque extrait, jusqu’à la ligne contenant `SOLDE`.
|
||
- Supprime **toute ligne dont la première colonne contient `date`** (ligne d’entête répétée).
|
||
- Supprime **la ligne contenant `Total des mouvements` ainsi que toutes celles qui suivent**.
|
||
|
||
3. **Fusion des documents**
|
||
- Fusionne tous les CSV générés en **un seul fichier final**.
|
||
- Ajoute **en première ligne** du fichier final l’en-tête `date` (récupéré du premier tableau traité).
|
||
|
||
4. **Formatage des valeurs**
|
||
- Supprime tous les **points `.`** dans les deux dernières colonnes (pour nettoyer les séparateurs de milliers dans les montants).
|
||
|
||
5. **Export**
|
||
- Produit un **fichier CSV unique** propre, prêt à être utilisé dans un tableur ou un outil de gestion de budget.
|
||
|
||
---
|
||
|
||
## 📦 Construction de l'image
|
||
|
||
Clonez ce dépôt puis construisez l'image :
|
||
|
||
```bash
|
||
git clone https://gitea.example.org/monuser/pdf2csv.git
|
||
cd pdf2csv
|
||
docker build -t pdf2csv:latest .
|