- Notifications
You must be signed in to change notification settings - Fork0
@geolonia/normalize-japanese-addressesのPython移植版
License
NotificationsYou must be signed in to change notification settings
tkscode/normalize-japanese-addresses-py
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
オープンソースの住所正規化ライブラリです。
経産省のIMI コンポーネントツールのジオコーディングの仕組みから
インスピレーションをうけて開発された@geolonia/normalize-japanese-addressesを
Pythonで利用できるように書き直したものです。
pypiで公開していますので、pipコマンドでインストールしてください。
pip install normalize-japanese-addresses
住所を正規化します。
fromnormalize_japanese_addressesimportnormalizeprint(normalize("北海道札幌市西区24-2-2-3-3"))# {'pref': '北海道', 'city': '札幌市西区', 'town': '二十四軒二条二丁目', 'addr': '3-3', 'lat': 43.074273, 'lng': 141.315099, 'level': 3}
住所の正規化結果として戻されるオブジェクトには、level
プロパティが含まれます。level
には、住所文字列のどこまでを判別できたかを以下の数値で格納しています。
0
- 都道府県も判別できなかった。1
- 都道府県まで判別できた。2
- 市区町村まで判別できた。3
- 町丁目まで判別できた。
例えば都道府県名のみを正規化したい場合、level
オプションで指定することで処理を早くすることができます。
fromnormalize_japanese_addressesimportnormalizeprint(normalize("北海道札幌市西区24-2-2-3-3",level=1))# {'pref': '北海道', 'city': '', 'town': '', 'addr': '札幌市西区24-2-2-3-3', 'lat': 43.074273, 'lng': 141.315099, 'level': 1}
以下の仕様は、元の@geolonia/normalize-japanese-addressesを踏襲しています。
- この正規化エンジンは、住所の「名寄せ」を目的としており、たとえば京都の「通り名」は削除します。
- 郵便や宅急便などに使用される住所としては、問題ないと考えています。
- この正規化エンジンは、町丁目及び小字レベルまでは対応していますが、それ以降については対応しておりません。
- 住居表示が未整備の地域については全体的に苦手です。
- 名寄せする住所は、@geolonia/japanese-addressesから都度取得しています。
- 漢数字と数字の変換については、@geolonia/japanese-numeralをPythonに書き直して取り込んでいます。
ソースコードのライセンスは MIT ライセンスです。
About
@geolonia/normalize-japanese-addressesのPython移植版
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
No packages published
Languages
- Python100.0%