概要

ジオコーディングのライブラリを試す機会がありましたので、備忘録です。

対象

今回は、以下のような文字列を対象にしてみます。

岡山市旧御野郡金山寺村。現在の岡山市金山寺。市の中心部からは直線で北方約一〇キロを隔てた金山の中腹にある。

ツール1: Jageocoder - A Python Japanese geocoder

まず以下の「Jageocoder」を試します。

https://t-sagara.github.io/jageocoder/

ソースコードの例は以下です。

iijrpmmaerppgsiooeunrroltttct(osjjjdssae=oogrnne.j.oiadcnguoiemdtope(csruo(rdrlee=rs'.uhsltettaspr,sc:hi/(n/'djeangte=o2c,odeenrs.uirnef_oa-spcrioit=oF.aclosme/)j)sonrpc')')

以下の結果が得られました。

{}""]mcaa{}tncd""""""""]hiinxylpnfedda""erou""da"m::vitl"t:eeoel:e"13lr"ns1:34"i:a""""93.:tm,:7".6y"e6953"g"[715,:e:"791o,5"501s[0,75,h805a,99p20e28_82c50i13t51y6,_,id:33100A2009/jisx0402:33100/jisx0402:33201",

設定の問題かもしれませんが、岡山市までの情報が得られました。

なお、以下のページでウェブUI経由で試すこともできました。

https://jageocoder.info-proto.com/

ツール2: GeoNLP

以下のページでウェブUI経由で試すことができました。

https://geonlp.ex.nii.ac.jp/jageocoder/demo/

GeoNLPも内部的にはjageocoderを使用しているとのことで、同様の結果が得られました。

また、以下の「テキストジオタギング(GeoNLP)デモ」も試してみました。

https://geonlp.ex.nii.ac.jp/demo/

入力テキストから複数の地名が抽出されました。

ツール3: Google Maps Platform API

最後に、Google Maps Platform APIを使用してみます。

https://developers.google.com/maps?hl=ja

iifld#AagmmroePdeppoaf使Idooomd_rcrr_gup}rieKeottdderaeflEsdooolrssYserottcapre_eseeo=m"""oedie:p==aqnndsaklnsaflrduvve"deasptsio"de(_h=dyneoadensrsivatr"gnarlpp:pt.etmedt{e:u=s=teorrr(gssprdpsaeasciiifesobrssagr.r[uannn"t(roe:"peese'lttttHeatss/:i"qtssti(((Tndes/_:uaptofffTvdl=(maketoa=n"""P(roTaade"suntALE"eardpdyjtssud=darEAsdudsr,as_esadtrrPs_er.e".c.'trriorI,d)egsgoj]aeetro_ososeds[ssu:rKAtso,#teo='usd:EPe,g(n=rl:e{YInlu=(et:d{"_vaer=)"s[{ar)KpalOu'r{teEip,2KlgelasY_i0"teso[p)ksp0:souc'oe.a:'mlasnycr]ettts)oa[t[iae:mm0r'ot./s]yfnusm='o[stap]r''apa[ml]tsr'aa}u/altt"samot')_psce]ci)ad}o/t_,dgiaeeodL}ondo"c'rn)o]egdsiest/'uj]ds}eo":n)"{loca"tion['lng']}")

結果、以下が得られました。

ALdadtrietsusd:e:34.770317-52516581,Longitude:133.946063

まとめ

他にも多くのジオコーディングのライブラリがあるかと思いますが、参考になりましたら幸いです。