DEV Community

Cover image for Getting Started with OLA Maps Python package
Ayush
Ayush

Posted on • Edited on

Getting Started with OLA Maps Python package

Recently OLA announced their new Maps platform and they're giving it away for free for a year. If you're planning to use it in your project, I've built a new Python package that makes it easy to integrate OLA Maps functionality into your Python projects. Let's explore how to use this package.

Installation

First, install the package:

pip install olamaps
Enter fullscreen mode Exit fullscreen mode

Authentication

Before you can use the OLA Maps API, you need to authenticate. The package supports two methods:

  1. Using an API key:
import os
os.environ["OLAMAPS_API_KEY"] = "your_api_key"

# OR
client = Client(api_key="your_api_key_here")
Enter fullscreen mode Exit fullscreen mode
  1. Using client ID and client secret:
import os
os.environ["OLAMAPS_CLIENT_ID"] = "your_client_id"
os.environ["OLAMAPS_CLIENT_SECRET"] = "your_client_secret"

# OR
client = Client(client_id="your_client_id", client_secret="your_client_secret")
Enter fullscreen mode Exit fullscreen mode

Basic Usage

Here's how to use the main features of the package:

from olamaps import Client

# Initialize the client
client = Client()

# Autocomplete a query
autocomplete_results = client.autocomplete("Kempe")

# Geocode a text address
geocode_results = client.geocode("MG Road, Bangalore")

# Reverse geocode a latitude-longitude pair
reverse_geocode_results = client.reverse_geocode(
    lat="12.9519408",
    lng="77.6381845",
)

# Get directions
directions_results = client.directions(
    origin="12.993103152916301,77.54332622119354",
    destination="12.972006793201695,77.5800850011884",
)

# close the client
client.close()
Enter fullscreen mode Exit fullscreen mode

The package also supports an AsyncClient and context managers. Check out the docs for them here

Conclusion

The olamaps package provides a simple way to integrate OLA Maps functionality into your Python projects. Whether you need to geocode addresses, reverse geocode coordinates, or get directions, this package has you covered.

Find this project on PyPI and on GitHub (Would love some ⭐️)

Remember, this is an unofficial package and is not endorsed by OLA. Always make sure you comply with OLA's terms of service when using their API.

Happy mapping!

Top comments (0)