Atlus
| Atlus | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Author: | whammo | |||||||||||||||||||
| License: | MIT License | |||||||||||||||||||
| Platform: | Web | |||||||||||||||||||
| Status: | Active | |||||||||||||||||||
| Website: | https://atlus.dev | |||||||||||||||||||
| Source code: | https://github.com/whubsch/atlus_website | |||||||||||||||||||
| Programming language: | Python | |||||||||||||||||||
|
Python package to parse US addresses with simple web interface |
||||||||||||||||||||
| ||||||||||||||||||||
Atlus (or atlus.dev) is a Python package that normalizes and splits up address strings into the appropriate addr:=* fields. It is intended primarily for addresses in the United States but is also able to be used somewhat reliably for addresses in Canada. The application also parses and formats United States and Canadian phone numbers (in the format +1-XXX-XXX-XXXX). Feel free to contribute at the repository's GitHub page.
Web interface
Users can access a simple web UI at the site's home page, a good way to quickly get a feel for what types of address and phone strings Atlus can handle. Users can only process one address at a time using this method. This frontend is written in TypeScript with React.
Once results are displayed, clicking the Copy button puts the parsed information into the user's clipboard so that it can easily be pasted into JOSM or the raw tag sections of iD or Rapid.
API
The API, which powers the whole application, is much more powerful and can process up to 10,000 address or phone strings per request from the /batch endpoints. There are rate-limits of 4 requests per second; this should be more than enough for most use cases. This backend is built using Python and FastAPI. The API can be accessed at the API base URL of api.atlus.dev. The auto-generated Swagger UI docs for the API can be viewed at the docs URL.
Python package
The code that powers Atlus is also accessible programmatically as its own Python package. Install using the following command:
pip install atlus
Documentation for the package is available here.
See also
- Addresses
addr:=*- United States OSM community
- overturetoosm Python package