Skip to main content

Atlus

GitHub License GitHub last commit PyPI - Version Pepy Total Downlods

This Python project translates raw address, phone number, and opening hours strings into the OpenStreetMap (OSM) tagging scheme. The package only supports US (and to some extent Canadian) addresses and phone numbers. The opening hours function only supports strings in English. You can try out the package without installing it at the Atlus website.

[!NOTE] Use of this package does not absolve you from following OSM's import guidelines.

Table of Contents

Features

  • Expand common street and name abbreviations.
  • Parse address parts correctly and reliably.
  • Get rid of address junk that is not needed for OpenStreetMap tagging.
  • Parse US and Canadian phone numbers into the standard format.
  • Parse raw opening hours strings into the OSM opening_hours format, including the special PH (public holiday) indicator and the dawn/dusk/sunrise/sunset solar time keywords.
  • Parse raw point-in-time strings (e.g. collection_times, service_times) into the matching OSM format, dropping any "closed" days rather than erroring (since point-in-time tags have no "closed" concept of their own).
  • Raise a clear error instead of guessing when opening hours/point-in-time input references calendar/date-based rules (month names, specific dates, named holidays, or OSM's Th[4]-style nth-weekday notation), which aren't supported.

Usage

This package is meant to work with GeoJSON files containing raw address data, including those produced by the All the Places project or Overture maps.

pip install atlus
>>> import atlus
>>> atlus.abbrs("St. Francis")
"Saint Francis"
>>> atlus.get_address("789 Oak Dr, Smallville California, 98765")[0]
{"addr:housenumber": "789", "addr:street": "Oak Drive", "addr:city": "Smallville", "addr:state": "CA", "addr:postcode": "98765"}
>>> atlus.get_phone("(202) 900-9019")
"+1-202-900-9019"
>>> atlus.get_hours("Monday to Friday 9am-5pm, Saturday 9am-12pm")
"Mo-Fr 09:00-17:00; Sa 09:00-12:00"
>>> atlus.get_times("Mo-Fr 15:00,18:00,19:00,23:00; Sa 15:00; Su 10:30,23:00")
"Mo-Fr 15:00,18:00,19:00,23:00; Sa 15:00; Su 10:30,23:00"
>>> atlus.get_hours("Mo-Fr sunrise-sunset")
"Mo-Fr sunrise-sunset"

Docs

The documentation for our package is available online at our documentation page. We would greatly appreciate your contributions to help improve the auto-generated docs; please submit any updates or corrections via pull requests.

License

This project is licensed under the MIT License. See the LICENSE file for details.

See also

Download files

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

Source Distribution

atlus-1.1.0.tar.gz (76.2 kB view details)

Uploaded Source

Built Distribution

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

atlus-1.1.0-py3-none-any.whl (28.1 kB view details)

Uploaded Python 3

File details

Details for the file atlus-1.1.0.tar.gz.

File metadata

  • Download URL: atlus-1.1.0.tar.gz
  • Upload date:
  • Size: 76.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.0

File hashes

Hashes for atlus-1.1.0.tar.gz
Algorithm Hash digest
SHA256 523008b1169dbf1a2a75dbc6b4653bc2a0490eed9fd27ee3cf0d2aca6899b4fe
MD5 914d08bb34ff0d430e7e283c32eb5102
BLAKE2b-256 f7a379b52d19c7df3ae04a4ff3a33f3685b9f000d425ec156531bcd91dd340d6

See more details on using hashes here.

File details

Details for the file atlus-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: atlus-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 28.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.0

File hashes

Hashes for atlus-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e16c2cb020e3cd034f5d0a208123a0f4ce44b257c30942b7288409c2812d7368
MD5 030914c6e58487502f11f4d3b795a4ab
BLAKE2b-256 6c0c16a342f89fd9e5cffdc7b943955dc1423fbe62e419fd80d0d3b80f55bb5b

See more details on using hashes here.

Release history Release notifications | RSS feed

1.2.0

2 files

This release

1.1.0 This release

2 files

1.0.1

2 files

1.0.0

2 files

0.2.3

2 files

0.2.2

2 files

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