# japanese-address-parser-py
A Python toolkit for processing Japanese addresses
[](https://pypi.org/project/japanese-address-parser-py/)
[](https://pypi.org/project/japanese-address-parser-py/#history)
[](https://github.com/YuukiToriyama/japanese-address-parser/actions/workflows/run-test.yaml)
## What is it?
**japanese-address-parser-py** is a Python package for parsing Japanese addresses.
Any address can be parsed into structured data.
## Installation from PyPI
```bash
pip install japanese-address-parser-py
```
## Usage
```python
from japanese_address_parser_py import Parser
address_list = [
"埼玉県さいたま市浦和区高砂3-15-1",
"千葉県千葉市中央区市場町1-1",
"東京都新宿区西新宿2-8-1",
"神奈川県横浜市中区日本大通1"
]
parser = Parser()
for address in address_list:
parse_result = parser.parse(address)
print(parse_result.address)
```
```text
{'prefecture': '埼玉県', 'town': '高砂三丁目', 'rest': '15-1', 'city': 'さいたま市浦和区'}
{'rest': '1-1', 'town': '市場町', 'prefecture': '千葉県', 'city': '千葉市中央区'}
{'prefecture': '東京都', 'rest': '8-1', 'town': '西新宿二丁目', 'city': '新宿区'}
{'town': '日本大通', 'city': '横浜市中区', 'prefecture': '神奈川県', 'rest': '1'}
```
```python
from japanese_address_parser_py import Parser
parser = Parser()
address = "神奈川県横浜市中区本町6丁目50-10"
parse_result = parser.parse(address)
print(parse_result.address["prefecture"])
print(parse_result.address["city"])
print(parse_result.address["town"])
print(parse_result.address["rest"])
```
```text
神奈川県
横浜市中区
本町六丁目
50-10
```
## Development
This library is written in Rust. You need to set up a Rust development environment to build this library.
Also, you need to install `maturin` as this library uses it in order to generate Python bindings.
```bash
# Install maturin
cargo install --locked maturin
# Clone repository
git clone https://github.com/YuukiToriyama/japanese-address-parser.git
# Build python module
cd japanse-address-parser/python
maturin build --release --out dist --find-interpreter
# Install the built library
python3 -m venv .venv
pip3 install dist/japanese_address_parser_py-[version]-cp37-abi3-[arch].whl
```
## Support
This software is maintained by [YuukiToriyama](https://github.com/yuukitoriyama).
If you have any questions, please create a new issue.
## Where to get source code
The source code is hosted on GitHub at:
https://github.com/YuukiToriyama/japanese-address-parser
## Acknowledgements
This software was inspired
by [@geolonia/normalize-japanese-addresses](https://github.com/geolonia/normalize-japanese-addresses).
In addition, the parsing process uses [Geolonia 住所データ](https://github.com/geolonia/japanese-addresses) which is
provided by [株式会社Geolonia](https://www.geolonia.com/company/).
## License
This crate is distributed under the terms of the MIT license.
Raw data
{
"_id": null,
"home_page": null,
"name": "japanese-address-parser-py",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "converter, utility, geo, rust",
"author": "Yuuki Toriyama <github@toriyama.dev>",
"author_email": "Yuuki Toriyama <github@toriyama.dev>",
"download_url": "https://files.pythonhosted.org/packages/0e/4a/44c8d6f3cf60579796e127cdf4b593871d21802619a3fbf1b88fc0370dea/japanese_address_parser_py-0.2.8.tar.gz",
"platform": null,
"description": "# japanese-address-parser-py\n\nA Python toolkit for processing Japanese addresses\n\n[](https://pypi.org/project/japanese-address-parser-py/)\n[](https://pypi.org/project/japanese-address-parser-py/#history)\n[](https://github.com/YuukiToriyama/japanese-address-parser/actions/workflows/run-test.yaml)\n\n## What is it?\n\n**japanese-address-parser-py** is a Python package for parsing Japanese addresses.\nAny address can be parsed into structured data.\n\n## Installation from PyPI\n\n```bash\npip install japanese-address-parser-py\n```\n\n## Usage\n\n```python\nfrom japanese_address_parser_py import Parser\n\naddress_list = [\n \"\u57fc\u7389\u770c\u3055\u3044\u305f\u307e\u5e02\u6d66\u548c\u533a\u9ad8\u78023-15-1\",\n \"\u5343\u8449\u770c\u5343\u8449\u5e02\u4e2d\u592e\u533a\u5e02\u5834\u753a1-1\",\n \"\u6771\u4eac\u90fd\u65b0\u5bbf\u533a\u897f\u65b0\u5bbf2-8-1\",\n \"\u795e\u5948\u5ddd\u770c\u6a2a\u6d5c\u5e02\u4e2d\u533a\u65e5\u672c\u5927\u901a1\"\n]\nparser = Parser()\nfor address in address_list:\n parse_result = parser.parse(address)\n print(parse_result.address)\n```\n\n```text\n{'prefecture': '\u57fc\u7389\u770c', 'town': '\u9ad8\u7802\u4e09\u4e01\u76ee', 'rest': '15-1', 'city': '\u3055\u3044\u305f\u307e\u5e02\u6d66\u548c\u533a'}\n{'rest': '1-1', 'town': '\u5e02\u5834\u753a', 'prefecture': '\u5343\u8449\u770c', 'city': '\u5343\u8449\u5e02\u4e2d\u592e\u533a'}\n{'prefecture': '\u6771\u4eac\u90fd', 'rest': '8-1', 'town': '\u897f\u65b0\u5bbf\u4e8c\u4e01\u76ee', 'city': '\u65b0\u5bbf\u533a'}\n{'town': '\u65e5\u672c\u5927\u901a', 'city': '\u6a2a\u6d5c\u5e02\u4e2d\u533a', 'prefecture': '\u795e\u5948\u5ddd\u770c', 'rest': '1'}\n```\n\n```python\nfrom japanese_address_parser_py import Parser\n\nparser = Parser()\naddress = \"\u795e\u5948\u5ddd\u770c\u6a2a\u6d5c\u5e02\u4e2d\u533a\u672c\u753a6\u4e01\u76ee50-10\"\nparse_result = parser.parse(address)\nprint(parse_result.address[\"prefecture\"])\nprint(parse_result.address[\"city\"])\nprint(parse_result.address[\"town\"])\nprint(parse_result.address[\"rest\"])\n```\n\n```text\n\u795e\u5948\u5ddd\u770c\n\u6a2a\u6d5c\u5e02\u4e2d\u533a\n\u672c\u753a\u516d\u4e01\u76ee\n50-10\n```\n\n## Development\n\nThis library is written in Rust. You need to set up a Rust development environment to build this library.\nAlso, you need to install `maturin` as this library uses it in order to generate Python bindings.\n\n```bash\n# Install maturin\ncargo install --locked maturin\n# Clone repository\ngit clone https://github.com/YuukiToriyama/japanese-address-parser.git\n# Build python module\ncd japanse-address-parser/python\nmaturin build --release --out dist --find-interpreter\n# Install the built library\npython3 -m venv .venv\npip3 install dist/japanese_address_parser_py-[version]-cp37-abi3-[arch].whl\n```\n\n## Support\n\nThis software is maintained by [YuukiToriyama](https://github.com/yuukitoriyama).\nIf you have any questions, please create a new issue.\n\n## Where to get source code\n\nThe source code is hosted on GitHub at:\nhttps://github.com/YuukiToriyama/japanese-address-parser\n\n## Acknowledgements\n\nThis software was inspired\nby [@geolonia/normalize-japanese-addresses](https://github.com/geolonia/normalize-japanese-addresses). \nIn addition, the parsing process uses [Geolonia \u4f4f\u6240\u30c7\u30fc\u30bf](https://github.com/geolonia/japanese-addresses) which is\nprovided by [\u682a\u5f0f\u4f1a\u793eGeolonia](https://www.geolonia.com/company/).\n\n## License\n\nThis crate is distributed under the terms of the MIT license.\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A library for processing addresses of Japan",
"version": "0.2.8",
"project_urls": {
"Source Code": "https://github.com/YuukiToriyama/japanese-address-parser"
},
"split_keywords": [
"converter",
" utility",
" geo",
" rust"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "e4a6e8b9ef6cb7c383f9305efa76d52d31565e0d40b6405a28fe60f0ee827801",
"md5": "8a117668ac4b1a9150890d1f83dba18d",
"sha256": "f4c8b3341e8494a7c0aaeed260e90e619f3c771db677fcace31049d304e48547"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8-cp37-abi3-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "8a117668ac4b1a9150890d1f83dba18d",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 2163791,
"upload_time": "2025-08-23T13:46:57",
"upload_time_iso_8601": "2025-08-23T13:46:57.494208Z",
"url": "https://files.pythonhosted.org/packages/e4/a6/e8b9ef6cb7c383f9305efa76d52d31565e0d40b6405a28fe60f0ee827801/japanese_address_parser_py-0.2.8-cp37-abi3-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "8811c30c8dc3293d5765de97651624601ffdc0b3f5098a4d8f25140fbf35ea00",
"md5": "e5cb738247c3b82af3086a39a2bc4b6d",
"sha256": "ee1ba3c12604d8d231c77ae8e2a4f147bdfad9f78126b07b364165eca8d32edf"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8-cp37-abi3-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "e5cb738247c3b82af3086a39a2bc4b6d",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 2075403,
"upload_time": "2025-08-23T13:46:56",
"upload_time_iso_8601": "2025-08-23T13:46:56.230885Z",
"url": "https://files.pythonhosted.org/packages/88/11/c30c8dc3293d5765de97651624601ffdc0b3f5098a4d8f25140fbf35ea00/japanese_address_parser_py-0.2.8-cp37-abi3-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6e32f72c73dd195eebf241117ee6aee431d27e51c3f01f4df5ed4eba47e4b3bc",
"md5": "ee803b12fd5c88c2a20eddd049f42060",
"sha256": "ca9b2c6f1a4fff49f643069793d0a9fd0204db17fee43d0713c48730d46d5b47"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "ee803b12fd5c88c2a20eddd049f42060",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 1886047,
"upload_time": "2025-08-23T13:46:46",
"upload_time_iso_8601": "2025-08-23T13:46:46.549629Z",
"url": "https://files.pythonhosted.org/packages/6e/32/f72c73dd195eebf241117ee6aee431d27e51c3f01f4df5ed4eba47e4b3bc/japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "662d6ba4a13d990ee9bbc1c6fcfed841e0a09d95936615199d518456a14ce4be",
"md5": "28642ff2611298bc3c8737eed0fb57b3",
"sha256": "4942d308cf6081184be15e014e0c5d048a36edeb7eba6be3d637986796b700f6"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl",
"has_sig": false,
"md5_digest": "28642ff2611298bc3c8737eed0fb57b3",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 1662648,
"upload_time": "2025-08-23T13:46:48",
"upload_time_iso_8601": "2025-08-23T13:46:48.391014Z",
"url": "https://files.pythonhosted.org/packages/66/2d/6ba4a13d990ee9bbc1c6fcfed841e0a09d95936615199d518456a14ce4be/japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "528b91582c438469aa39c289339f866ad471972cb4b8c90379785d7916e4a642",
"md5": "ffb0c4b7572da8c2a9da4bd342ace71e",
"sha256": "839687e28c1620273fb393a771b2e658d2faed624fac92d42d2ac7609485cea5"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "ffb0c4b7572da8c2a9da4bd342ace71e",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 2002171,
"upload_time": "2025-08-23T13:46:53",
"upload_time_iso_8601": "2025-08-23T13:46:53.036736Z",
"url": "https://files.pythonhosted.org/packages/52/8b/91582c438469aa39c289339f866ad471972cb4b8c90379785d7916e4a642/japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c906aabab2f34a8b670cf8a6144f8d7c5db69927ce89985c75675def16a97ecc",
"md5": "ed93057d69a57a8c17964873dafcbff6",
"sha256": "e41b577d380e6e63e58f916cfa8e31f8392865fcbbc2f2a961423c3c67174c39"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl",
"has_sig": false,
"md5_digest": "ed93057d69a57a8c17964873dafcbff6",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 2200229,
"upload_time": "2025-08-23T13:46:50",
"upload_time_iso_8601": "2025-08-23T13:46:50.100784Z",
"url": "https://files.pythonhosted.org/packages/c9/06/aabab2f34a8b670cf8a6144f8d7c5db69927ce89985c75675def16a97ecc/japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "63f4fdc2a0536a1b06e99503a01f7bd6084d20bbc2037c6fe1f4a143d2d60a63",
"md5": "1b4e85455d339e8595757cbd08ea2c18",
"sha256": "e6d880f7ff6bfac4badd95a51ebfdffeb8e43a9130058f0580c379245ba8a74a"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl",
"has_sig": false,
"md5_digest": "1b4e85455d339e8595757cbd08ea2c18",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 2251682,
"upload_time": "2025-08-23T13:46:51",
"upload_time_iso_8601": "2025-08-23T13:46:51.798344Z",
"url": "https://files.pythonhosted.org/packages/63/f4/fdc2a0536a1b06e99503a01f7bd6084d20bbc2037c6fe1f4a143d2d60a63/japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "8a22c0b51f58723e8b6440b80d5c32f0f953a22ab7aea4ae45ca36e42cf013f0",
"md5": "d48faa1a72e39be8c39fec50d0bbe735",
"sha256": "7a94b19437a84d9547da6a8cdbb25c00e3a80d0f16076fbe1ef5fd13266bdb52"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "d48faa1a72e39be8c39fec50d0bbe735",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 2022334,
"upload_time": "2025-08-23T13:46:54",
"upload_time_iso_8601": "2025-08-23T13:46:54.650335Z",
"url": "https://files.pythonhosted.org/packages/8a/22/c0b51f58723e8b6440b80d5c32f0f953a22ab7aea4ae45ca36e42cf013f0/japanese_address_parser_py-0.2.8-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4afe3920cdd7e14ec6f100b7e7b96f09c093747b454a44e4cad4bbdc0e7f0d77",
"md5": "d577c11527c9a9e6733b7ae5e64359bd",
"sha256": "9863d7ec1faa4a8b4aebc94876b564f2a98026dc89710d4b17293d8299f1b672"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8-cp37-abi3-win32.whl",
"has_sig": false,
"md5_digest": "d577c11527c9a9e6733b7ae5e64359bd",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 1576350,
"upload_time": "2025-08-23T13:47:01",
"upload_time_iso_8601": "2025-08-23T13:47:01.683321Z",
"url": "https://files.pythonhosted.org/packages/4a/fe/3920cdd7e14ec6f100b7e7b96f09c093747b454a44e4cad4bbdc0e7f0d77/japanese_address_parser_py-0.2.8-cp37-abi3-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "a8ce56d9b135a25f4b046e2a1408d4b8899bd4ad8486ddd6a9f5a02bcbc47b98",
"md5": "99c34515d4d75eddfe03b6fee83efa94",
"sha256": "a1b28ff2bb74e9860aae4bfbb082efaa69f91702ceb40b1ae24b0911d5c0a4ec"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8-cp37-abi3-win_amd64.whl",
"has_sig": false,
"md5_digest": "99c34515d4d75eddfe03b6fee83efa94",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 1868277,
"upload_time": "2025-08-23T13:47:00",
"upload_time_iso_8601": "2025-08-23T13:47:00.101985Z",
"url": "https://files.pythonhosted.org/packages/a8/ce/56d9b135a25f4b046e2a1408d4b8899bd4ad8486ddd6a9f5a02bcbc47b98/japanese_address_parser_py-0.2.8-cp37-abi3-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0e4a44c8d6f3cf60579796e127cdf4b593871d21802619a3fbf1b88fc0370dea",
"md5": "0537390ef0ada07170c3e8cd4681bdb6",
"sha256": "9397cbf834ab06a5e5865d1dd125a50c9c3d40b65ebb2897c302f9e9a4637c56"
},
"downloads": -1,
"filename": "japanese_address_parser_py-0.2.8.tar.gz",
"has_sig": false,
"md5_digest": "0537390ef0ada07170c3e8cd4681bdb6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 48595,
"upload_time": "2025-08-23T13:46:58",
"upload_time_iso_8601": "2025-08-23T13:46:58.880473Z",
"url": "https://files.pythonhosted.org/packages/0e/4a/44c8d6f3cf60579796e127cdf4b593871d21802619a3fbf1b88fc0370dea/japanese_address_parser_py-0.2.8.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-23 13:46:58",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "YuukiToriyama",
"github_project": "japanese-address-parser",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "japanese-address-parser-py"
}