Skip to main content

A parser and toolkit for the opening_hours in OpenStreetMap written in Rust.

Project description

Python bindings for OSM Opening Hours

PyPI Doc

Usage

The package is published for Python 3.9 and above, but you should be able to install it with older version of python if you install the Rust toolchain.

Install opening-hours-py from PyPI, for example using pip:

pip install --user opening-hours-py

Then, the main object that you will interact with will be OpeningHours:

from opening_hours import OpeningHours

oh = OpeningHours("Mo-Fr 10:00-18:00; Sa-Su 10:00-12:00")
print("Current status is", oh.state())
print("This will change at", oh.next_change())

The API is very similar to Rust API but you can find a Python specific documentation here.

Developpement

To build the library by yourself you will require a recent version of Rust, rustup is usually the recommanded tool to manage the installation.

Then you can use poetry to install Python dependancies and run maturin (the building tool used to create the binding) from a virtualenv.

git clone https://github.com/remi-dupre/opening-hours-rs.git
cd opening-hours-rs/python

# Install Python dependancies
poetry install

# Enter the virtualenv
poetry shell

# Build developpement bindings, add `--release` for an optimized version
maturin develop

# Now the library is available as long as you don't leave the virtualenv
python
>>> from opening_hours import OpeningHours
>>> oh = OpeningHours("24/7")
>>> oh.state()
"open"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

opening_hours_py-0.6.11.tar.gz (934.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

opening_hours_py-0.6.11-cp311-cp311-manylinux_2_34_x86_64.whl (367.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

File details

Details for the file opening_hours_py-0.6.11.tar.gz.

File metadata

  • Download URL: opening_hours_py-0.6.11.tar.gz
  • Upload date:
  • Size: 934.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.1.0

File hashes

Hashes for opening_hours_py-0.6.11.tar.gz
Algorithm Hash digest
SHA256 28e0dc1f03e8348331b43ef8ee3c4007636d7c9e2f510b485d91cb3c7f0d9a47
MD5 89170d7da6537f20fc23693f0b5313cb
BLAKE2b-256 7a81daa0137488ffca395c33bf984eeae7cca05c1b3113f5df83eb6701fd7a92

See more details on using hashes here.

File details

Details for the file opening_hours_py-0.6.11-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for opening_hours_py-0.6.11-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 f117a19a811bfe4c2ec87518d811fac9d45d3b907438beb486fc6f04422924dd
MD5 14aea81c31987b550f55bc625771c708
BLAKE2b-256 1c5904c67130d037d871bd44b65bfeca0cfa03b98bc7b655eaab9813e7b38315

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page