LaurentTRIPIED commited on
Commit
4375cde
1 Parent(s): 8bdb0b0

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +47 -0
app.py ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import fitz # Import de PyMuPDF
2
+ import json
3
+ import os
4
+
5
+ def extract_text_from_pdf(pdf_path):
6
+ """
7
+ Extrait le texte de chaque page d'un fichier PDF.
8
+
9
+ :param pdf_path: Chemin vers le fichier PDF.
10
+ :return: Liste de dictionnaires avec le texte de chaque page et le numéro de page.
11
+ """
12
+ # Ouvre le fichier PDF
13
+ with fitz.open(pdf_path) as doc:
14
+ pages_text = []
15
+ # Parcourt chaque page
16
+ for page_num, page in enumerate(doc, start=1):
17
+ # Extrait le texte de la page
18
+ page_text = page.get_text()
19
+ pages_text.append({"page": page_num, "text": page_text})
20
+ return pages_text
21
+
22
+ def save_text_to_json(data, output_file):
23
+ """
24
+ Sauvegarde le texte extrait dans un fichier JSON.
25
+
26
+ :param data: Les données à sauvegarder (liste de dictionnaires).
27
+ :param output_file: Chemin du fichier JSON de sortie.
28
+ """
29
+ with open(output_file, 'w', encoding='utf-8') as f:
30
+ json.dump(data, f, ensure_ascii=False, indent=4)
31
+
32
+ # Chemin vers le fichier PDF dans le répertoire data/
33
+ pdf_path = 'data/07-VF2_UDM_Oneframe_A4-2023.pdf'
34
+ # Chemin du fichier JSON de sortie
35
+ json_output_path = 'data/extracted_text.json'
36
+
37
+ # Vérification de l'existence du répertoire data/
38
+ if not os.path.exists('data'):
39
+ os.makedirs('data')
40
+
41
+ # Extrait le texte du PDF
42
+ pdf_text = extract_text_from_pdf(pdf_path)
43
+
44
+ # Sauvegarde le texte dans un fichier JSON
45
+ save_text_to_json(pdf_text, json_output_path)
46
+
47
+ print(f"Le texte a été extrait et sauvegardé dans {json_output_path}")