outils_OSM/README.md

76 lines
3.2 KiB
Markdown

# RDOO
Récupération de Données OSM via Overpass
## Prérequis
`pip3 install requests`
`pip3 install pyexcel-ods3`
## But
Ce script sert à récupérer (en JSON et tableau ods) les infos de stationnement vélo, d'ateliers, d'associations, vendeurs, réparateurs et fabricants de vélo.
Il appelle Overpass par des requêtes successives et récupère les tags des objets OSM.
Un géocodage inverse permet de transformer latitude et longitude en adresses.
## Options
### Zone géographique
`-z, --zone`, définit la zone cible du script, par défaut le Puy-de-Dôme.
L'identifiant des objets s'obtient depuis la carte openstreetmap.org :
- clic-droit dans la zone concernée
- interroger les objets
- choisir la relation dans les « Objets englobants »
- noter l'ID
Examples :
- Puy de Dôme : 7406
- Clermont : 110866
### Géocodage inverse
`-gi, --geocoding-inverse`, activer le géocodage inverse (valeur par défaut)
`-ngi, --no-geocoding-inverse`, désactiver le géocodage inverse
### Log
`-l, --log-level`, choisir le niveau de log (INFO par défaut)
### Dossiers de résultats et d'archivage
`-r, --dossier-resultats`, pour indiquer le dossier d'enregistrement des JSON et ods (par défaut `resultats/`)
`-a, --dossier-archive`, pour indiquer le dossier d'archivage des JSON et ods (par défaut `resultats/archives/`). L'archivage crée un sous-dossier daté de la date des fichiers à archiver.
Ces chemins sont relatifs à `rdoo.py`, il est possible de passer des chemins absolus comme `/home/user/rdoo/archives/`. Attention à ne pas oublier le `/` final !
Il est possible de ne pas archiver en passant l'argument `-na, --no-archive`.
### Traductions
Les tags peuvent être traduits grâce au fichier `traductions.json` contenant la configuration sous la forme `"clef" : "tableau_de_valeurs"` où la clef est la valeur du tag OSM à traduire et le tableau de valeurs est de la forme `"valeur" : "traduction"`. Le fichier par défaut contient l'exemple de la traduction du tag `"bicycle_parking"`.
## Umap
Les fichiers json générés peuvent être directements utilisés dans [umap](https://umap.openstreetmap.fr/fr/) en les [important](https://wiki.openstreetmap.org/wiki/FR:UMap/Guide/Importer_un_fichier_de_donn%C3%A9es) et choisissant le format de données `osm`.
Si vous disposez d'un serveur pour héberger le script ou ses résultats, le lien du fichier peut être utilisé directement dans umap comme `données distantes` d'un calque, en cochant `dynamique` et `avec proxy`.
## Inspirations / ressources :
### urls ressources
- https://towardsdatascience.com/loading-data-from-openstreetmap-with-python-and-the-overpass-api-513882a27fd0
- https://geo.api.gouv.fr/adresse
- https://wiki.cartocite.fr/doku.php?id=umap:10_-_je_valorise_les_donnees_openstreetmap_avec_umap
- https://sites-formations.univ-rennes2.fr/mastersigat/Cours/Intro_Overpass.pdf
### usage des tags :
- https://taginfo.openstreetmap.org/tags/?key=amenity&value=bicycle_parking#combinations
### exemple URL données pour umap :
- https://www.velocite63.fr/velocite63/OSM/stationnements_velos_publics.json
penser à cocher "proxy" dans la rubrique "données distantes" du calque
### export ODS :
- https://pythonhosted.org/pyexcel-ods/
## Licence
Ce script est placé sous Licence GPL.