awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
geopy avatar

geopy/geopy

0
View on GitHub↗
geopy.readthedocs.io↗

Geopy

geopy is a Python geocoding library and geolocation client used to convert human-readable addresses into geographic coordinates and resolve coordinates back into street addresses using various third-party web services.

The library provides a consistent provider-based interface that abstracts multiple external geocoding services, allowing for interchangeable backends. It includes built-in request rate limiting and asynchronous client interfaces to manage API call frequency and execute concurrent lookups without halting execution.

Beyond geocoding, the project includes geospatial utilities for calculating the shortest distance between two points using spherical or ellipsoidal earth models. It also provides tools for coordinate formatting, such as converting decimal degrees to degrees-minutes-seconds, and performing geographic unit conversions.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Geocoding Services - Converts human-readable addresses or landmarks into latitude and longitude coordinates using various web services.
  • Geocoding Libraries - Provides a comprehensive set of tools for converting human-readable addresses to geographic coordinates and vice versa via third-party services.
  • Reverse Geocoding - Translates geographic coordinates into human-readable administrative names or street addresses.
  • Reverse Geocoding Services - Turns geographic latitude and longitude coordinates back into human-readable street addresses via external providers.
  • Geocoding API Clients - Implements specialized Python interfaces for executing asynchronous and throttled requests to multiple external geocoding providers.
  • Driver-Based Provider Architectures - Uses a driver-based provider architecture to abstract multiple external geocoding services through a consistent API.
  • Geodesic Calculations - Calculates the shortest path distance between two points on the earth's curved surface.
  • Coordinate Distance Calculation - Computes the precise distance and shortest path between coordinates using spherical and ellipsoidal models.
  • Ellipsoidal Distance Calculations - Computes high-precision distances between coordinates using ellipsoidal earth models.
  • Geocoding Converters - Translates human-readable addresses or landmarks into geographic coordinates using web services.
  • Bulk Processing - Manages large sets of location lookups with integrated rate limiting and retry logic.
  • Asynchronous Geocoding Lookups - Provides non-blocking operations to handle multiple concurrent geolocation lookups efficiently.
  • Client-Side Rate Limit Throttling - Implements client-side delay logic to prevent service providers from throttling requests during bulk operations.
  • Asynchronous Processing - Utilizes non-blocking Python operations to execute multiple geolocation requests concurrently.
  • API Adapters - Maps generic geocoding requests into the specific HTTP parameters and response formats required by different web APIs.
  • Asyncio Coroutine Execution - Implements non-blocking I/O operations using Python's asyncio coroutines for concurrent network requests.
  • Request Rate Limiting - Includes built-in mechanisms to manage outgoing API call frequency and implement retries to prevent service provider throttling.
  • Geolocation - Geocoding toolbox.
  • Geospatial Tools - Geocoding toolbox.
  • Specialized Data Utilities - Geocoding addresses and calculating distances.
  • Python Geospatial Libraries - Provides a client for geocoding web services.
4,872 stars·671 forks·Python·MIT·26 views

Star history

Star history chart for geopy/geopyStar history chart for geopy/geopy

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does geopy/geopy do?

geopy is a Python geocoding library and geolocation client used to convert human-readable addresses into geographic coordinates and resolve coordinates back into street addresses using various third-party web services.

What are the main features of geopy/geopy?

The main features of geopy/geopy are: Geocoding Services, Geocoding Libraries, Reverse Geocoding, Reverse Geocoding Services, Geocoding API Clients, Driver-Based Provider Architectures, Geodesic Calculations, Coordinate Distance Calculation.

Which projects share features with geopy/geopy?

Projects with overlapping indexed features include: geocoder-php/geocoder — Geocoder is a PHP library for converting addresses to geographic coordinates and coordinates back into addresses using… alexreisner/geocoder — This is a Ruby toolkit for converting addresses to geographic coordinates and performing reverse geocoding via… osm-search/nominatim — Nominatim is a self-hosted geospatial search engine and geocoding server that utilizes OpenStreetMap data. It provides… geopandas/geopandas — GeoPandas is a Python library that extends pandas with native support for geospatial data. It treats geographic… manuelbieh/geolib — Geolib is a geospatial calculation library and point analysis tool. It provides a collection of utilities for… hpneo/gmaps — gmaps is a library that provides a wrapper for the Google Maps API, serving as a geospatial data toolkit and…

Projects sharing features with Geopy

These projects share indexed features with Geopy. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • geocoder-php/geocodergeocoder-php avatar

    geocoder-php/Geocoder

    3,975View on GitHub↗

    Geocoder is a PHP library for converting addresses to geographic coordinates and coordinates back into addresses using various third-party services. It functions as a multi-provider geocoding wrapper and a reverse geocoding engine, providing an abstraction layer to manage multiple geocoding APIs. The project allows for switching between providers or chaining requests for failover to ensure high availability. It also serves as a GeoIP location resolver, translating IP addresses into geographic coordinates and location details through either remote services or local binary databases. The libra

    PHPgeocoder
    View on GitHub↗3,975
  • alexreisner/geocoderalexreisner avatar

    alexreisner/geocoder

    6,446View on GitHub↗

    This is a Ruby toolkit for converting addresses to geographic coordinates and performing reverse geocoding via multiple external API providers. It provides a library for integrating location services into Ruby applications, including an IP geolocation tool to translate IP addresses into coordinates, city names, and country data. The project includes a command line interface for bulk geocoding of database records with integrated rate limiting and a geospatial query engine for calculating distances and performing radius or bounding box searches. It also features a mocking framework that provide

    Ruby
    View on GitHub↗6,446
  • osm-search/nominatimosm-search avatar

    osm-search/Nominatim

    4,334View on GitHub↗

    Nominatim is a self-hosted geospatial search engine and geocoding server that utilizes OpenStreetMap data. It provides a complete infrastructure for forward geocoding, converting addresses or place names into geographic coordinates, and reverse geocoding, translating coordinates into human-readable physical addresses. The project features a dedicated data importer that parses raw map data into a PostgreSQL geospatial database. It distinguishes itself through a configurable import pipeline that uses style files to filter map features and an importance-based ranking system to prioritize search

    Pythongeocodingopenstreetmaposm
    View on GitHub↗4,334
  • geopandas/geopandasgeopandas avatar

    geopandas/geopandas

    5,049View on GitHub↗

    GeoPandas is a Python library that extends pandas with native support for geospatial data. It treats geographic geometries—points, lines, and polygons—as a first-class column type within DataFrames, enabling users to store, manipulate, and analyze vector spatial data alongside traditional tabular attributes. The library is built on top of proven geospatial components: it uses Shapely for all geometric operations, Fiona and GDAL for reading and writing standard spatial file formats, PyProj for coordinate reprojection, and an R‑tree spatial index (from Shapely) to accelerate spatial queries. Wh

    Pythongeoparquetgeospatialpandas
    View on GitHub↗5,049
  • Compare all 30 related projects→