initial commit
This commit is contained in:
41
README.md
Normal file
41
README.md
Normal file
@@ -0,0 +1,41 @@
|
||||
# 📄 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 .
|
||||
Reference in New Issue
Block a user