Skip to main content

GeonamesCache

image

A Python library that provides functions to retrieve names, ISO and FIPS codes of continents, countries as well as US states and counties as Python dictionaries. The country and city datasets also include population and geographic data.

Geonames data is obtained from GeoNames.

Installation

pip install geonamescache

Usage

A simple example:

import geonamescache

gc = geonamescache.GeonamesCache()
print(gc.get_countries())

Settings

Cities dataset

When creating a GeonamesCache you can set the min_city_population parameter to either of 500, 1000, 5000 or the default 15000. The smaller the minimum population the more cities are included in the cities dataset.

Methods

Currently geonamescache provides the following methods, that return dictionaries with the requested data:

  • get_continents()
  • get_countries()
  • get_us_states()
  • get_cities()
  • get_countries_by_names()
  • get_us_states_by_names()
  • get_cities_by_name(name)
  • get_us_counties()

In addition you can search for cities by name.

  • search_cities('NAME', case_sensitive=True, contains_search=True)

This function returns a list of city records that match the given NAME.

  • By default the alternatenames attribute is searched for matches.
  • By default the search is case insensitive, it can be made case sensitive by changing case_sensitive to True.
  • By default the search is contains, it can be made exact equality by changing contains_search to False.

Mappers

The mappers module provides function(s) to map data properties. Currently you can create a mapper that maps country properties, e. g. the name property to the iso3 property, to do so you'd write the following code:

from geonamescache.mappers import country
mapper = country(from_key='name', to_key='iso3')

iso3 = mapper('Spain') # iso3 is assigned ESP

Contributing

Please write test(s) for any new feature. If you wish to build the data from scratch, run make dl and make json.

Release files for geonamescache 3.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for geonamescache 3.0.2
File Size Uploaded
geonamescache-3.0.2.tar.gz 33.6 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for geonamescache 3.0.2
File Interpreter ABI Platform
geonamescache-3.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 68.6 MB

Release files / geonamescache-3.0.2.tar.gz

Download URL geonamescache-3.0.2.tar.gz
Size 33.6 MB
Tags Source
SHA-256 checksum
How to use checksums
1cc7007a7a14637f665c7bd7934dc5a04a973daf4d962d789651047aa1a00cb1
BLAKE2b-256 checksum
How to use checksums
56f71ca0ac4ca0b7a0f21f6628094a0e4fbfb836508370e8e835294ca125536f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Hatch/1.17.1 {"ci":null,"cpu":"x86_64","distro":{"id":"noble","libc":{"lib":"glibc","version":"2.39"},"name":"Ubuntu","version":"24.04"},"implementation":{"name":"CPython","version":"3.12.3"},"installer":{"name":"hatch","version":"1.17.1"},"openssl_version":"OpenSSL 3.0.13 30 Jan 2024","python":"3.12.3","system":{"name":"Linux","release":"6.8.0-136-generic"}} HTTPX2/2.3.0

Release files / geonamescache-3.0.2-py3-none-any.whl

Download URL geonamescache-3.0.2-py3-none-any.whl
Size 35.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
b830e8942f2d58c7e68782dcf4dff2ffe8c4104a35ee881ed1ad4023cefcdba4
BLAKE2b-256 checksum
How to use checksums
48c252f1b29de8839b4b55cd2641dfd722a6a94953d74fa82514e26084a92318
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Hatch/1.17.1 {"ci":null,"cpu":"x86_64","distro":{"id":"noble","libc":{"lib":"glibc","version":"2.39"},"name":"Ubuntu","version":"24.04"},"implementation":{"name":"CPython","version":"3.12.3"},"installer":{"name":"hatch","version":"1.17.1"},"openssl_version":"OpenSSL 3.0.13 30 Jan 2024","python":"3.12.3","system":{"name":"Linux","release":"6.8.0-136-generic"}} HTTPX2/2.3.0

Release history Release notifications | RSS feed

This release

3.0.2 This release

2 release files

3.0.1

2 release files

3.0.0

2 release files

2.0.0

2 release files

1.6.0

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

0.21

2 release files

0.20

2 release files

0.19

2 release files

0.18

1 release file

0.17

1 release file

0.16

1 release file

0.15

1 release file

0.13

1 release file

0.12

1 release file

0.11

1 release file

0.10

1 release file

0.9

1 release file

0.8

1 release file

0.7

1 release file

0.6

1 release file

0.5

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page