Docfile commited on
Commit
404221b
·
verified ·
1 Parent(s): f9ced6f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +26 -16
app.py CHANGED
@@ -263,21 +263,28 @@ def index():
263
 
264
  @app.route('/analyze', methods=['POST'])
265
  def analyze():
266
- if 'image' not in request.files:
267
- return jsonify({'error': 'No image uploaded'}), 400
268
-
269
- image_file = request.files['image']
270
-
271
- # Sauvegarder temporairement l'image
272
- with tempfile.NamedTemporaryFile(delete=False) as temp_file:
273
- image_file.save(temp_file.name)
274
- image = Image.open(temp_file.name)
275
-
276
  try:
277
- # Première génération : le tableau
278
- tableau = generate_table(image)
 
 
 
 
 
 
 
 
 
279
 
280
- # Deuxième génération : la dissertation
281
  dissertation = generate_dissertation(tableau)
282
 
283
  return jsonify({
@@ -287,6 +294,9 @@ def analyze():
287
  except Exception as e:
288
  return jsonify({'error': "Erreur."}), 500
289
  finally:
290
- # Nettoyer le fichier temporaire
291
- os.unlink(temp_file.name)
292
-
 
 
 
 
263
 
264
  @app.route('/analyze', methods=['POST'])
265
  def analyze():
266
+ # Récupérer toutes les images envoyées
267
+ images = request.files.getlist('image')
268
+ if not images or len(images) == 0:
269
+ return jsonify({'error': 'Aucune image uploadée'}), 400
270
+
271
+ temp_files = []
272
+ image_list = []
273
+
 
 
274
  try:
275
+ # Sauvegarder temporairement chaque image et les ouvrir avec PIL
276
+ for image in images:
277
+ if image:
278
+ suffix = os.path.splitext(image.filename)[1]
279
+ with tempfile.NamedTemporaryFile(delete=False, suffix=suffix) as temp_file:
280
+ image.save(temp_file.name)
281
+ temp_files.append(temp_file.name)
282
+ image_list.append(Image.open(temp_file.name))
283
+
284
+ # Première génération : le tableau à partir de la liste des images
285
+ tableau = generate_table(image_list)
286
 
287
+ # Deuxième génération : la dissertation à partir du tableau
288
  dissertation = generate_dissertation(tableau)
289
 
290
  return jsonify({
 
294
  except Exception as e:
295
  return jsonify({'error': "Erreur."}), 500
296
  finally:
297
+ # Nettoyer tous les fichiers temporaires
298
+ for file_path in temp_files:
299
+ try:
300
+ os.unlink(file_path)
301
+ except Exception as cleanup_error:
302
+ print(f"Erreur lors de la suppression du fichier temporaire {file_path}: {cleanup_error}")