from flask import Flask, jsonify, request, render_template, Markup import requests import json from traficFranceBleuParis import generate_traffic_html # Remplacez par le vrai nom de votre fichier Python. TOMTOM_API_KEY = "PVt4NaZSKKtziZi9DaqNAUzN4flNJnSo" app = Flask(__name__) @app.route('/') def index(): try: # Appeler la fonction qui génère le HTML traffic_report_content = generate_traffic_html() except Exception as e: # En cas d'erreur de génération, vous pouvez afficher un message par défaut traffic_report_content = f"

Erreur lors de la génération du rapport : {e}

" # Rendre la page index.html en y injectant le contenu généré # Assurez-vous que dans index.html, vous avez un emplacement # par exemple :
{{ traffic_report|safe }}
return render_template('index.html', traffic_report=Markup(traffic_report_content)) @app.route('/api/incidents', methods=['GET']) def get_incidents(): """ Récupère les incidents depuis l'API TomTom Traffic. """ try: # Définir les coordonnées pour Paris et une zone de bounding box bounding_box = "1.79804455,48.52917947,2.88843762,49.24075760" # Paris: sud-ouest, nord-est url = f"https://api.tomtom.com/traffic/services/5/incidentDetails?bbox={bounding_box}&fields=%7Bincidents%7Btype%2Cgeometry%7Btype%2Ccoordinates%7D%2Cproperties%7BiconCategory%7D%7D%7D&language=en-GB&categoryFilter=0%2C1%2C2%2C3%2C4%2C5%2C6%2C7%2C8%2C9%2C10%2C11%2C14&timeValidityFilter=present&key={TOMTOM_API_KEY}" # Appel API response = requests.get(url) response.raise_for_status() # Vérifie les erreurs HTTP data = response.json() # Convertit la réponse en JSON incidents = data.get("incidents", []) # Récupère les incidents # Ajouter un affichage pour voir les incidents print(f"Incidents récupérés ({len(incidents)} incidents) : {json.dumps(incidents, indent=2)}") return jsonify({"status": "success", "data": incidents}), 200 except requests.exceptions.RequestException as e: print(f"Erreur lors de la récupération des incidents: {e}") return jsonify({"status": "error", "message": str(e)}), 500 if __name__ == "__main__": import os port = int(os.environ.get("PORT", 7860)) # Use the default port for Hugging Face Spaces app.run(host="0.0.0.0", port=port, debug=True, use_reloader=False)