kimaidou a écrit : > Bonjour, > > Je suis en train de développer un petit outil en python qui permette > sans installation complexe de faire du suivi rapide de l'évolution des > objets dans la bdd OSM sur une ou plusieurs zones. Je l'ai appelé > "OsmWatch" > > Pour l'instant, c'est encore un embryon, mais les fonctionnalités > basiques sont à peu près en place, et donc j'en parle ici pour qu'on > ne soit pas plusieurs à faire un outil équivalent dans notre coin, > mais pour rassembler les bonnes volontés. Je souhaitais attendre un > peu, mais Germaine de Marseille a accéléré les choses... > > Objectif: > ********* > Cet outil va permettre de suivre l'évolution d'objets OSM via le : > > * Choix d'une ou plusieurs zones (bbox) > La taille de chaque bbox doit rester pas trop grande (limites de l'api > et de la xapi, cf description technique + loin) > > * Choix du suivi des objets. L'outil doit permettre de suivre des > groupes d'objets caractérisés par : > - une liste d'osm_id fixe > - une valeur pour un tag, par exemple toutes les boulangeries shop=bakery. > - un utilisateur : soit tous les objets dernièrement édité par > l'utilisateur X, soit (plus lourd) tous les objets qui ont une fois > été édités par X > > On peut avoir plusieurs listes, donc suivre par exemple tous les > objets "boulangerie" et tous les supermarchés, tous les objets édités > par Bob et par Germaine sur la ou les zones. > > Fonctionnement > *********** > L'objet de cet outil n'est pas de stocker tout l'historique de chaque > objet à chaque passage, ni de proposer des outils statistiques de > folie, ni d'éditeur carto, etc. > J'ai décidé plutôt de faire un outil simple, qui fonctionne par passe. > Lorsqu'on le lance, > * il va chercher via l'api et la xapi les objets par rapports aux > critères rentrés (utilisateur, tags, etc.) > * il compare cette liste d'objet à celle obtenue lors de la dernière passe > * Il fait un rapport html avec les différences : objets modifiés, > supprimés, ajoutés depuis la dernière fois. > * il écrase les données stockées par les nouvelles (qui seront > comparées lors de la prochaine passe). > > Technologie > ********** > Pour l'instant, ce n'est qu'un petit et moche fichier python, qu'il > faudra que j'organise mieux. > Il est basé sur la pythonOsmApi ( > http://wiki.openstreetmap.org/wiki/PythonOsmApi , merci à l'auteur !) > , mais utilise aussi la XAPI pour ses capacités de recherche avancée. > Les données de chaque passe sont enregistrées dans une base sqlite, > pour que l'outil soit portable. > Je cherche ici à faire un outil léger et portable, qu'on puisse lancer > d'une simple clé USB. > Pour l'instant, l'outil fait juste un "rapport" au format HTML avec > des codes couleurs pour dire "supprimé", "modifié", ajouté et avec des > liens vers la dscription de l'objet dans OSM. > Pour l'instant, l'outil suit seulement les nodes, mais bien sûr je > vais étendre à tous les objets (je teste d'abord) > > Idées d'utilisation > ********* > * Je suis une commune, j'ai "donné" 550 poins de bancs publics à OSM, > je veux pouvoir les suivre, mais aussi voir si d'autres sont ajoutés > par des utilisateurs > * Je veux voir les modifications faites sur les objets que j'ai édités > précédemment > * Je savoir quand quelqu'un ajoute des écoles dans ma zone > * etc. > > Je ne cherche pas ici à faire un outil qui permette d'éditer > directement la bdd OSM (par exemple : "Tiens, Germaine a supprimé mon > arrêt de bus, hop, je clique et il est recréé !" ). Je préfère que la > personne soit prévenue, et ensuite qu'elle utilise les outils d'OSM > manuellement. > > > Idées futures > ********* > * lancé l'outil périodiquement sur un serveur > * faire une interface graphique > * envoyer un email > etc. > > Voilà pour la description générale. > > Les étapes : > * j'améliore un peu le code, je le nettoie et l'organise > * je crréé un projet OpenSource sur une forge quelconque > * tout le monde peut l'améliorer, le faire avancer, etc. > > Kimaidou > Je bosse entre autre sur des fonctionnalités similaires avec pour objectif final une bibliothèque d'accès C# aux api OSM qui . L'idée pour moi est avant tout de suivre les coins que je cartographie et de visualiser graphiquement les zones éditées depuis mes derniers ajouts. Je suis prêt à mutualiser idées, extraits de sources (sont caca pour l'instant), speudo code, algorithmes, ...
Benoît R. _______________________________________________ Talk-fr mailing list [email protected] http://lists.openstreetmap.org/listinfo/talk-fr

