[OSM-talk-fr] Lire un changeset osm - le diff-to-text en français

Jean-Baptiste Holcroft jb.holcroft at gmail.com
Mer 21 Oct 21:43:46 UTC 2015


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




Plus d'informations sur la liste de diffusion Talk-fr