Les données test proviennent d'une source unique: Judilibre de la cour de cassation. Ces données se trouvent dans le répertoire exemples.
Pour plus de simplicité, il est recommandé d'utiliser le conteneur défini par le Dockerfile, à la fois pour la partie d'extraction du texte qui est réalisée avec Poppler et également pour la partie Python.
⚠️ Refaire un "build" du conteneur à chaque modification du code Python: en effet le code Python est copié dans le conteneur lors de sa construction.
Pour les travaux pratiques du cours NLP des Mines Paris, voir les instructions dans le fichier TP.md.
docker build -t pdftools .
L'argument -t pdftools
permet de donner le nom pdftools
au conteneur que l'on créé.
Utile pour lancer des commandes directement dans le conteneur:
docker run -it pdftools bash
L'argument -i
que l'on ajoute ici est pour indiquer que le conteneur doit être lancé en mode interactif, ce qui est nécessaire si on doit interagir avec le terminal. On lance la commande bash
.
Commande à lancer dans le répertoire racine du dépôt Git:
docker run -v ./exemples:/data -it pdftools /usr/bin/pdftotext -layout /data/pourvoi_n_21-24.923_30_11_2023.pdf
Par défaut, le fichier texte sera généré avec le même nom et au même emplacement que le fichier PDF, avec l'extension .txt
. Le fichier texte généré est en utf-8
.
Commande à lancer dans le répertoire racine du dépôt Git:
docker run -v ./exemples:/data -it pdftools /venvs/pdftools/bin/text2md /data/pourvoi_n_21-24.923_30_11_2023.txt /data/pourvoi_n_21-24.923_30_11_2023.md
Commande à lancer dans le répertoire racine du dépôt Git:
docker run -v ./exemples:/data -it pdftools /venvs/pdftools/bin/md2xml /data/pourvoi_n_21-24.923_30_11_2023.md /data/pourvoi_n_21-24.923_30_11_2023.xml
Alternativement, et de manière un peu plus compliquée, il est tout à fait possible d'installer le paquetage Python directement sur votre machine, par exemple dans un environnement virtuel (CHEMIN_DU_VENV
est un répertoire qui sera créé par la première commande ci-dessous):
python3 -m venv CHEMIN_DU_VENV
CHEMIN_DU_VENV/bin/pip install -e .
De cette manière, vous pouvez utiliser directement les commandes text2md
et md2xml
:
CHEMIN_DU_VENV/bin/text2md ./exemples/pourvoi_n_21-24.923_30_11_2023.txt ./exemples/pourvoi_n_21-24.923_30_11_2023.md
CHEMIN_DU_VENV/bin/md2xml ./exemples/pourvoi_n_21-24.923_30_11_2023.md ./exemples/pourvoi_n_21-24.923_30_11_2023.xml