/py-osrm

Python bindings to the OSRM routing framework

Primary LanguageLuaBSD 2-Clause "Simplified" LicenseBSD-2-Clause

py-osrm

PUSH_CI

py-osrm is a Python package that binds to osrm-backend using nanobind.


Supported Platforms

Platform Arch
Linux x86_64
MacOS x86_64
Windows x86_64

Installation

py-osrm is supported on CPython 3.8+, and can be installed from source via running the following command in the source folder:

pip install .

Example

The following example will showcase the process of calculating routes between two coordinates.

First, import the osrm library, and instantiate an instance of OSRM:

import osrm

# Instantiate py_osrm instance
py_osrm = osrm.OSRM("./tests/test_data/ch/monaco.osrm")

Then, declare RouteParameters, and then pass it into the py_osrm instance:

# Declare Route Parameters
route_params = osrm.RouteParameters(
    coordinates = [(7.41337, 43.72956), (7.41546, 43.73077)]
)

# Pass it into the py_osrm instance
res = py_osrm.Route(route_params)

# Print out result output
print(res["waypoints"])
print(res["routes"])

Documentation

Documentation Page