Bonjour,

Un jour j'ai eu l'occasion d'aller à Grignan, j'y ai fait quelques modifications : https://www.openstreetmap.org/changeset/25291159

Vous constaterez que vous aurez beaucoup de mal à comprendre ce que j'ai changé car l'interface d'osm.org est radine en explications, et pour cause un diff osm ne contient que les nouveaux objets, difficile dans ces conditions de décrire les modifications effectuées.

Heureusement, nos amis d'overpass-api ont inventé les diff augmentés, qui permettent d'avoir le avant/après des modifications :
http://wiki.openstreetmap.org/wiki/Overpass_API/Augmented_Diffs

Quelques geeks en ont fait une version graphique : http://nrenner.github.io/achavi/?changeset=25291159

Mais comme je trouve toujours cela insatisfaisant, j'ai voulu créer quelque chose qui me dise en français ce qui a été fait. J'ai donc créé un script python qui fait ce que je souhaite : https://framadrop.org/r/3IQRRn1ovM#otLqDnvFm4bGFYigwp3puXTsuhBjuPJexMWBPl2Kv5o= L'archive est à décompresser et le programme à lancer via "python3 main.py 25291159" (testé sous python 3.4, mais ça devrait marcher sous toute version de python3).

Normalement cela devrait vous sortir une liste de texte qui indique les objets qui ont été modifiés : https://framabin.org/?22db1ce1ab5b330b#hU94j+qwaQxUnoiSLQ8BVkoYsOaK9ug9BfFtY+PVKd8=

Le résultat est encore incomplet (et moche), il faudrait ajouter :
* la gestion des relations (si quelqu'un me passe un ou deux numéros de changeset je suis preneur) * la gestion des déplacements d'objets ou d'ajout de points à un way (je n'ai pas encore trouvé de bonne solution) * internationaliser le résultat (normalement facile car j'utilise les listes nominatim)
* ... (liste trop longue)

J'apprends python avec ce petit projet, il manque toute la gestion des exceptions et certaines choses sont probablement très illogiques. Je suis intéressés par vos retours, tant sur l'opportunité que sur le code réalisé.

Mon souhait est de transformer ça en une sortie JSON, puis d'accéder à plus ou moins de détail selon ce qui nous intéresse. Puis de le publier en complément de services comme par exemple http://live.openstreetmap.fr/

Cordialement,

--
Jean-Baptiste Holcroft


_______________________________________________
Talk-fr mailing list
Talk-fr@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk-fr

Répondre à