Library for working with GeoNames dump
Project description
Library to query places from GeoName dumps (http://download.geonames.org/export/dump/).
Installation
geonames requires Python 2.7 or 3.5+ as well as numpy and pandas packages. It can be installed with,
pip install geonames
Usage
The best way to search for a specific location is to have a “filter” value and then the place’s name. The filter will reduce the number of rows to check considerably. For example, when searching for a location in the US there are (currently) 2237584 entries. However, once a state is specified (e.g. West Virigina) the number drops down to 35932; 1/60th of the original number of rows.
import geonames import io import urllib.request as request import zipfile name = 'Bath(Berkeley Springs)' # (Berkeley Springs, West Virgina) # Download US geonames dataset US = request.urlopen('http://download.geonames.org/export/dump/US.zip') zipfile = zipfile.ZipFile(io.BytesIO(US.read())) # Load data geo = geonames.GeoNames(zipfile.open('US.txt')) # Search with state specified (`admin1code` filters by state) location = next(geo.search(name=name, admin1code='WV')) print(location)
Which (if all goes well) should output:
geonameid 4.7987e+06 name Berkeley Springs asciiname Berkeley Springs alternatenames Berkeley Spring,Berkeley Springs,Warm Springs latitude 39.6264 longitude -78.2292 featureclass H featurecode SPNG countrycode US countrycode2 NaN admin1code WV admin2code 065 admin3code NaN admin4code NaN population 0 elevation 185 dem 194 timezone America/New_York modificationdate 2011-12-12 certainty 86 Name: 741633, dtype: object
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size geonames_lib-0.4.1-py3-none-any.whl (4.3 kB) | File type Wheel | Python version py3 | Upload date | Hashes View |
Hashes for geonames_lib-0.4.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e9012ccedecc8c6bd4762eaaab07629ed0233959b77b5ac3b049e8b51fb3f3c |
|
MD5 | fbc3db0fbfde6cc63f2917c11360b68e |
|
BLAKE2-256 | 5e7e14dc08eb6318768ce251c19b61998c13c2d10f74ac45a186e4788f1ed0e9 |