Scraping Open Street Map

Bonjour les GH,

Je me heurte à une problématique technique pour le scrap de données sur des cartes Open Street Maps.

Je m’explique…

  • de nombreux sites hébergent des cartes Open Street Map sur lesquelles figurent, par exemple, les adresses et les coordonnées de tous leurs bureaux en France ou dans le monde

  • Les données s’affichent sous la forme de bulles (points d’intérêt)…mais l’URL reste la même pour toutes les bulles

  • impossible (?) alors de scraper la liste des URLs pour ensuite récupérer les données

Je pense que ce sujet peut intéresser pas mal de GH non développeurs (comme moi). Alors si vous avez une astuce ou un conseil, je pense que plusieurs d’entre nous seront intéressés.

Merci et bon courage à tous dans le contexte covidesque actuel.

1 J'aime

Hello, j’espère que tu vas bien.

Il y a un petit truc qui cloche, rien que dans le titre de ton sujet… « Scraping Open Street Map », car en fait comme son nom l’indique Open Street Map, c’est de la data ouverte et libre, accessible gratuitement à tous via API.

Du coup, pourquoi vouloir faire du scraping d’un truc open ? :slight_smile:

https://wiki.openstreetmap.org/wiki/API_v0.6


https://nominatim.org/release-docs/develop/api/Search/

Salut @ScrapingExpert, merci pour ta réponse mais je crois qu’on ne s’est pas bien compris.

Alors voici un exemple pour que vous voyez de quoi il s’agit.

Voici une jolie carte avec de jolies données : https://www.centres-sociaux.fr/reseau/#decouvrirreseau

Comment, SI POSSIBLE SANS CODER, réussir à collecter l’ensemble des données de tous les points d’intérêts ?

Penses tu qu’on puisse le faire avec l’API et Gsheets ?

Hello @Jckrppr,

Mea culpa dans ce cas ! Je comprends mieux ton besoin maintenant.

En ce qui me concerne, je ne suis pas fan des soluces GSheets + API, car on tente de faire rentrer des données « non plates » (JSON), dans un format de données tabulaires.

Pour ne répondre qu’à moitié à ta question, sur la partie API pure, oui il y a pléthore de données à récupérer, comme on peut le voir ici:

Avec plein de belles adresses postales, de n° de téléphone, et d’adresses emails :slight_smile:

Je suis une « quiche » niveau « SANS CODER », peut être un autre membre pourrait te dire comment le faire sans une seule ligne de code.

UPDATE

Je viens de faire une trouvaille, qui devrait te plaire :slight_smile:

  1. Je t’invite à aller sur ce convertisseur de JSON to CSV:
    http://www.convertcsv.com/json-to-csv.htm

  2. Dans l’onglet « Enter Url », entres cette URL dans l’input texte: https://umap.openstreetmap.fr/fr/datalayer/939203/, puis cliques sur « Load URL »

  3. Résultats: tadaaaam

8 J'aimes

Merci @ScrapingExpert. Je vais tester ta solution.

Sinon, pour les NO CODE, j’avais trouvé une solution (un peu barbare) également :

  • Aller sur la page qui héberge la carte OSM
  • Observer le code source pour détecter l’URL de la carte et l’ouvrir dans un nouvel onglet (on se retrouve donc avec la carte en plein écran)
  • Remplacer tous les paramètres de l’URL en « False » par « True » : permet d’avoir accès à toutes les fonctionnalités d’OSM dont l’export au format GEOJSON
  • Remplacer l’extension du fichier .GEOJSON téléchargé par .JSON
  • Ouvrir avec un éditeur de texte
  • BIM : Toutes les données sont là, en clair