Localités du monde

Cet article montre comment télécharger et traiter dans le langage basilic des fichiers décrivant des localités du monde entier. Le site geonames permet d’effectuer des recherches interactives ou de télécharger des fichiers contenant des informations notamment sur les localités. La page de téléchargement geoname comprend des fichiers par pays ou pour le monde entier. Voici un extrait en traduction automatique de la documentation:

Lisez-moi pour les fichiers d'extraction de GeoNames Gazetteer
==============================================================

Ce travail est sous licence Creative Commons Attribution 4.0,
voir https://creativecommons.org/licenses/by/4.0/
Les données sont fournies "telles quelles" sans garantie ni représentation d'exactitude, d'actualité ou d'exhaustivité.

Le format de données est un texte délimité par des tabulations en codage utf8.

Fichiers (liste partielle):
cities500.zip   : toutes les villes avec une population > 500 (environ 185000)
cities1000.zip  : toutes les villes avec une population > 1000 (environ 130000)
cities5000.zip  : toutes les villes avec une population > 5000 (environ 50000)
cities15000.zip : toutes les villes avec une population > 15000 (environ 25000)

Tous ces fichiers ont la même structure:

00 geonameid            : identifiant entier de l'enregistrement
01 name                 : nom du point géographique (utf8) 
02 asciiname            : nom du point géographique en caractères ascii simples
03 alternatenames       : noms alternatifs, séparés par des virgules
04 latitude             : latitude en degrés décimaux
05 longitude            : longitude en degrés décimaux
06 classe d'entités     : voir http://www.geonames.org/export/codes.html
07 code de fonction     : voir http://www.geonames.org/export/codes.html
08 code pays            : code pays ISO-3166 à 2 lettres
09 cc2                  : codes de pays alternatifs, séparés par des virgules
10 code admin1          : code de la première division administrative
11 code admin2          : code de la deuxième division administrative
12 code admin3          : code pour la division administrative de troisième niveau
13 code admin4          : code pour la division administrative de quatrième niveau
14 population           : nombre d'individus
15 altitude             : en mètres
16 dem                  : élévation moyenne
17 timezone             : l'identifiant du fuseau horaire 
18 date de modification : date de la dernière modification au format aaaa-MM-jj

Pour une utilisation simple, le programme suivant permet de télécharger le fichier cities500.zip et de créer un fichier tabulé cities.txt comportant sept informations pour chaque localité:

  • 00 nom de la localité
  • 01 latitude
  • 02 longitude
  • 03 pays
  • 04 population
  • 05 altitude
  • 06 fuseau horaire
Java

Exemples d’exécution:

java localites -load
0       name=cities500.txt;size=32258364;compressedsize=10516477;
Fichier cities.txt cree
Structure d'un enregistrement:
00 nom localite
01 latitude
02 longitude
03 pays
04 population
05 altitude
06 fuseau horaire
java localites lille
Sint-Huibrechts-Lille   51.22266        5.49437 BE      3354    40      Europe/Brussels
Lille   51.24197        4.82313 BE      15466   17      Europe/Brussels
Kaulille        51.18763        5.52372 BE      4570    45      Europe/Brussels
Stenlille       55.53888        11.5912 DK      1905    34      Europe/Copenhagen
Lillerod        55.87496        12.34579        DK      15359   45      Europe/Copenhagen
Saint-Andre-lez-Lille   50.66667        3.05    FR      10931   22      Europe/Paris
Oursbelille     43.28688        0.03698 FR      1251    277     Europe/Paris
Marquette-lez-Lille     50.67628        3.06613 FR      10832   20      Europe/Paris
Lillers 50.56345        2.48042 FR      10104   28      Europe/Paris
Lillebonne      49.5203 0.53617 FR      9797    15      Europe/Paris
Lille   50.63297        3.05858 FR      228328  27      Europe/Paris
Lilleshall      52.73418        -2.40316        GB      942     97      Europe/London
Tivolille Pasquali-Merenzata    39.27953    16.20738        IT      4381    422     Europe/Rome
Lillestrom      59.95597        11.04918        NO      14000   116     Europe/Oslo
Lillesand       58.24879        8.3778  NO      6081    7       Europe/Oslo
Lillehammer     61.11514        10.46628        NO      19096   210     Europe/Oslo
Velille -14.50889       -71.88528       PE      0       3743    America/Lima

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *