Python bindings for libpostal C library.
Reason this release was yanked:
pre-release
Project description
libpypostal
Python bindings for libpostal, an open-source address parsing library.
Why another Python library for libpostal?
There are currently two Python packages available on PyPI that provide bindings for the libpostal C library.
- pypostal (official)
- pylibpostal (fork of pypostal)
Due to lack of development in either project for a number of years, here is yet another (non-forked) Python package to address some challenges in usability.
Note that this package reuses the C extension code to avoid reinventing the wheel with some minor changes (e.g. remove Python 2 support). The Python API has also changed slightly in some cases for usability purposes as well.
Installation
If a wheel is not available for your architecture and/or Python version, you need to first install libpostal.
pip install libpypostal
Usage
Libpostal data configuration
Required to use the library. Use the following utility to download the data.
NOTE: This function will also automatically set the LIBPOSTAL_DATA_DIR to the output directory specified.
from libpypostal import data_utils
output_dir = "/tmp/libpostal_data_dir"
data_utils.download_libpostal_data(output_dir)
Alternatively, if you have already downloaded the data, you only need to run:
from libpypostal import data_utils
output_dir = "/tmp/libpostal_data_dir"
data_utils.set_data_dir_env_var(output_dir)
Address parser
from libpypostal import parser
parser.parse_address("123 Main St, Somewhere, DC 00000")
Versioning
Each release of libpypostal
depends on a specific version of libpostal
when building wheels to release.
The version used to build the Python wheels for a given release can be found as follows:
from libpypostal import version
version.LIBPOSTAL_VERSION
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for libpypostal-0.0.5-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4cc5eeac4d0fe64720a1eb474f1444b4ebfb1693ca72abdb628186bf9131e1c6 |
|
MD5 | 598e49fd2d4a4ee40cb3c66760a86db1 |
|
BLAKE2b-256 | d247a57be7b63a56f45cf476eb048aa6e00f34cbe5ad512ff537e17e026fc7d0 |
Hashes for libpypostal-0.0.5-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f380379ce6eae962d85bd88bb06264e05c6af0304cc8901890d5f6ab925f49f |
|
MD5 | 7a2862bba71ec35a6aefbf47991df1f2 |
|
BLAKE2b-256 | 51f1050c5a4d8ff40a1210bf4ea0ad6eed411e5bdb7914f866151564924072fa |
Hashes for libpypostal-0.0.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4af587cabf6ee28b2ec978710a966421d052da9ac6a3c1d9703d383923bcb8f4 |
|
MD5 | 86687eeb98c5a942f2f2163254bddca6 |
|
BLAKE2b-256 | b701c700f94373c95a5fcf841b235c4f99c61580e86e24c2f617ba26b909ca98 |
Hashes for libpypostal-0.0.5-pp310-pypy310_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 470c4ade7544b4dee83ce83b99858e9a82b4371ef274e16d474b47e406c247a5 |
|
MD5 | 3c1e138525000edfe90515fc49fce7d3 |
|
BLAKE2b-256 | 219c0564fbddd9827e3ebb2dbcf5abba0dd9887f20a11cbefa8d7804e86c54ae |
Hashes for libpypostal-0.0.5-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | daf6f79089e6c7f5e6326751b6f6dc3c53ca96112c02d15823ef42cf0df75bb5 |
|
MD5 | 403bb8d91a9bb6e956120edd61acd19c |
|
BLAKE2b-256 | bd78910339937078695652cdaefac1b8bd811dccc70673dba8df6f157bab8cec |
Hashes for libpypostal-0.0.5-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a68390b8f5a26a59eb96a57c6eb9cb0808be8f2df83fb9109f04f44e72d03572 |
|
MD5 | fb95a28a144931cac93ead42455b4387 |
|
BLAKE2b-256 | c74ee1ac645b5e45389b11d88060c1f7b2ee25f04b0630abf9ce7708895d3a41 |
Hashes for libpypostal-0.0.5-pp39-pypy39_pp73-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 644322a753b0a3dee37529e8c9e03caac42f21251996650a06c3e134c07c2791 |
|
MD5 | 702d6972814d880fdf1c22396ff46f3e |
|
BLAKE2b-256 | a35212a6bc647b3f0dd19c5b884559c354558599a9fbd9dec60fa2504f28601f |
Hashes for libpypostal-0.0.5-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a963e4bebf371a2e7c1af4e6029b6ff3b7b709875d32ea004f9d86fd0079e567 |
|
MD5 | d7ad09882013575a19305ba403fdbac1 |
|
BLAKE2b-256 | d49a3f1152fc838576bc80e9f1e090aedb7430ce3530d6d361d3f79bc85d5e14 |
Hashes for libpypostal-0.0.5-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed7c786c0aaa10419e442d390530e3a804108039b57b685792dfedbd3f521f41 |
|
MD5 | 41a086c7fd565bb54600e8e570337595 |
|
BLAKE2b-256 | 2a10a5d4e53d573e0faa1afa2a87efaae2e0f0f530e185ba613317c4fd917791 |
Hashes for libpypostal-0.0.5-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8644abf60dfed9f81faf8d9f126d574e6ca90ab3af951ed4b55fff7950d3fa2 |
|
MD5 | 5618cf03a19f0f134db7f1ebfa990efc |
|
BLAKE2b-256 | 237469a48b92a3ef14114bdd1db2e202185b28065d619687f0f1a669f520171d |
Hashes for libpypostal-0.0.5-pp38-pypy38_pp73-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e45888948404833c7ce77a00ad994d0de933051a0adecab99443a625ee8d5cd3 |
|
MD5 | c287238e71c74fb06f3789d10946f87d |
|
BLAKE2b-256 | 30a3adc2c92e26f7fe9c02392365cb03d77dc7a2e215e3e936b71a163aa48282 |
Hashes for libpypostal-0.0.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3bedc1adfb34c5ea49da060950198b64436d857c22057f6a81d78d406b0e9a82 |
|
MD5 | 708de28903eab98521a8d9e129f65eba |
|
BLAKE2b-256 | aff52c35199a33576b09028f3b07addd8079dcef4fbe66d3f594e1139e884471 |
Hashes for libpypostal-0.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15e7972aa4e08f8a7c490816ffaa581238edfe3c140e30ba7eb66a84f7f943b1 |
|
MD5 | 3096885b73855ddece558644d7057a47 |
|
BLAKE2b-256 | a21429ba29fbabb70d53081190a589c6de586acec4de2bccc9ab5c5af205358b |
Hashes for libpypostal-0.0.5-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb96f433905991e7eac8300babad80b72290ffee75c5e2859aed07f4f0e2d408 |
|
MD5 | ade997bde5ad48919ddb45c23969b90f |
|
BLAKE2b-256 | 0092b068eadd36ea163dd3a3f890c163b9b191607bc79bc3087836956e930f2e |
Hashes for libpypostal-0.0.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a42d3a9a35b8dc559c57f7e9324846a71cd09cca3ee36c069d810fd2a400dd0 |
|
MD5 | dbbe097603ea3d621c4573c6bf08ac0d |
|
BLAKE2b-256 | af6d2183ad2fb2459b3b8ec00953467f7ef7cc77ff0314f626e9c2927f92f462 |
Hashes for libpypostal-0.0.5-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3bf48cf080741ac02cf75cbd177430b1b45765e2e53824ccdc1d03548379fd1d |
|
MD5 | 9adf02df027aaf3185d6cbefcfbf1b5a |
|
BLAKE2b-256 | 8ba07f03e5ad683091a84a2015161a157cfc7c8e1e9c35a122b4bd3a8a37b131 |
Hashes for libpypostal-0.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90c5b0019b2a6ff84921415c0c59fc62c505fddd3ff2a481f6cc2586a07658fb |
|
MD5 | f6bc8f56dd06701aaf269111e2ce450f |
|
BLAKE2b-256 | 5d3f96d186d313422cf3286afbd03ef5f8d1f1538dd64771163e32189789ff82 |
Hashes for libpypostal-0.0.5-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a7fe1c15428956cceac00e56d4531824a52fa3fb4a80392066e0312e0f56c441 |
|
MD5 | 73e43f79f97e5874929d293045f323c8 |
|
BLAKE2b-256 | 24c6c2689a1c574755e0a422368c3eafe6d7e54cb4e662d8c31337573196e91e |
Hashes for libpypostal-0.0.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 30a160b82eddbb55a2c7250f52cf4287b03418fd074e73f2ac302bdfc6a247ed |
|
MD5 | 6afc3e5a2676a474a9af8eff78534449 |
|
BLAKE2b-256 | a576d5aa93520b3cf9380300685f2e4e3b081217a08a2a39d855ee9e175e8f39 |
Hashes for libpypostal-0.0.5-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e3f33b0ff3db9dd8f6cc0878c2a2b87ca79da24e4262e907e7c30f08b9a644b |
|
MD5 | c4495b4988695bf0da9b53da06915933 |
|
BLAKE2b-256 | 2f4f656947a90b0c3e2b7fb866396afd2676e5cf2fdad3683b782438341b8058 |
Hashes for libpypostal-0.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 00df7eeb59f213dc75f6af229ffa9bc1d412898b80957240f9a2acedb68bf5d4 |
|
MD5 | af85bb6d3a898de15ed48c50d136c02f |
|
BLAKE2b-256 | a7c0c67a6811947b39724dde5f712255ef98b2264e18856545f3c62be141ce45 |
Hashes for libpypostal-0.0.5-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a783f56715eae60d111fff6f221ff3a9056b1f66c5c654aba87c88eb3b56054 |
|
MD5 | b570ab9e08126e02b7346b4242823cb4 |
|
BLAKE2b-256 | 1443b9f67f46b08f5ff8693efc2b20935c53b455f1f11b84dc693ed020e67a82 |
Hashes for libpypostal-0.0.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b1d5c5a836caeb220670e4d9cffb4817a03bdae7e7b62d2d82591945eece419d |
|
MD5 | a238bd0758476ebf5c9e851e4f998504 |
|
BLAKE2b-256 | 7821781d56a3568be1e52b584e525b205707071542835f8b46f3776b398a46d7 |
Hashes for libpypostal-0.0.5-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5c249319646c83f38c00b31a41fa0b29dd5590bc4805c48caaac02c3b34baedf |
|
MD5 | 26bcd4b2d0deb4b51becd4486fcc7805 |
|
BLAKE2b-256 | 720078085b8327d03404609681e249d90a23edcb049634ef39aa5870b1f7a122 |
Hashes for libpypostal-0.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9b356ed2cdf27bf2e74bc1d031d8befc346d3696cf122f45c49e7a0ac7074b48 |
|
MD5 | b91b02e755236ea6a05bc41cc34bc32b |
|
BLAKE2b-256 | 8388ad341f8becceda78a9c73d5694555b86a7d7494a6b83964ae4b9d155b712 |
Hashes for libpypostal-0.0.5-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd2313d7159f39d7488159909e91e876ecde8494d104fea6e93ecced4cc99cab |
|
MD5 | 0e330335830ed6968c1b7033f5934ebe |
|
BLAKE2b-256 | 0952d01a7fdb32c6ad261cf547e728040df2b7acb2396d79693e6bc41ec33ccc |
Hashes for libpypostal-0.0.5-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4cee71bec45534b5447882e9d5757319e33cabbd4723acb430a7b6b7a6e4c948 |
|
MD5 | 7d42bb811601200414be239b7b33bc1e |
|
BLAKE2b-256 | 4da754b1207fe56526869775eb76abe2ebe6c73938c2ad08e8cf1b700c5d71c6 |
Hashes for libpypostal-0.0.5-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b76143572172b252dba7c17da6dac9e9d3211833d5f6aaecb2fdb511a78d99d |
|
MD5 | 1b2d6367f437f273ad931ee2e156efd8 |
|
BLAKE2b-256 | 46718c571dd1e2f2d3230662b91dd5a099f38a5850837c6e4e7a4ab154ac7be7 |
Hashes for libpypostal-0.0.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2696397a5d85bf945981b6b1ebecbaacdb3728fb0dc61abeab9f1207ee32255 |
|
MD5 | ea2b92c28eadd1ee1128843c47a459a6 |
|
BLAKE2b-256 | 1348324694db6b166f6b50ecf27afe28ba65af3f0c8ce3ab406987d441d32748 |
Hashes for libpypostal-0.0.5-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c4d608f0fa5a732f4c0f19fa4683ba127fcddeea68da61df8da63be86ff87627 |
|
MD5 | 008af479d26afe15db0d388592ddcd5c |
|
BLAKE2b-256 | 736fb85240aad5e3308994a2bc3a582b82a97e5c5f96ac23ebad9952d26c9dcf |
Hashes for libpypostal-0.0.5-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dce9afc2419db9b49e359e0872c3fefcdaabdcd8dd69fdde0525bdd171f70907 |
|
MD5 | 07eeea8ab016c4faab0ae5fe860b5ac1 |
|
BLAKE2b-256 | ad023f1fa1c68fb0270b1cbf1133b7abafed7b87588ba2cb0b63c139fff71954 |
Hashes for libpypostal-0.0.5-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0a19801f29d4f06e9b8df296c7552c1e703be1f164a9b707f702a32d1f106980 |
|
MD5 | 6b3e07e50d537340fbce3bb4509ba1b0 |
|
BLAKE2b-256 | 772d7180d5e65f7de5493049f33d25d81188bd53c0decd689ff76c054014bad3 |