# Mise à jour du fichier historisé france internal Ce document explique comment utiliser le script `update.py` pour mettre à jour le fichier historisé france internal (`france-internal.osh.pbf`) en utilisant l'outil `osmupdate`. ## Prérequis - Python 3.6 ou supérieur - L'outil `osmupdate` installé sur le système - Un fichier `france-internal.osh.pbf` existant dans le répertoire `osm_data` ## Utilisation Le script `update.py` peut être exécuté de deux façons : ```bash # Méthode 1 : Exécution directe (le script est exécutable) ./update.py # Méthode 2 : Exécution via Python python3 update.py ``` ### Options - `--verbose` ou `-v` : Affiche la sortie des commandes en temps réel, ce qui permet de suivre la progression de la mise à jour. Exemple : ```bash ./update.py --verbose ``` ## Fonctionnement Le script effectue les opérations suivantes : 1. Vérifie si le fichier `france-internal.osh.pbf` existe dans le répertoire `osm_data`. 2. Crée un répertoire temporaire `update_temp` s'il n'existe pas déjà. 3. Exécute la commande `osmupdate` pour mettre à jour le fichier avec les dernières modifications d'OpenStreetMap. 4. Crée une sauvegarde de l'ancien fichier avec l'extension `.bak`. 5. Remplace l'ancien fichier par le nouveau fichier mis à jour. 6. Affiche des informations sur la durée de la mise à jour. ## Logs Le script utilise le module `logging` de Python pour enregistrer les informations importantes : - Heure de début et de fin de la mise à jour - Durée totale de la mise à jour - Erreurs éventuelles lors de la mise à jour ## Intégration avec d'autres scripts Le fichier `france-internal.osh.pbf` est utilisé comme fichier d'entrée par défaut dans le script `historize_zone.py`. Après avoir mis à jour ce fichier avec `update.py`, les analyses historiques effectuées par `historize_zone.py` utiliseront automatiquement les données les plus récentes. ## Automatisation Pour automatiser la mise à jour régulière du fichier, vous pouvez ajouter une tâche cron : ```bash # Exemple : mise à jour quotidienne à 3h du matin 0 3 * * * cd /chemin/vers/osm-commerce-sf/counting_osm_objects && ./update.py >> update.log 2>&1 ``` ## Dépannage Si vous rencontrez des erreurs lors de l'exécution du script : 1. Vérifiez que `osmupdate` est correctement installé et accessible dans le PATH. 2. Assurez-vous que le fichier `france-internal.osh.pbf` existe dans le répertoire `osm_data`. 3. Vérifiez les permissions des répertoires `osm_data` et `update_temp`. 4. Consultez les logs pour plus d'informations sur l'erreur.