PythonのgeocoderとOpenStreetMapの活用とスキルアップを目指し、四国88箇所霊場を題材にコードを組んでみました。また、コード作成にあたって、最近サインアップしたOpenAIのChatGPTも活用してみました。
今回のポイントは以下の通りです。
・OpenStreetMapを活用して四国88箇所霊場の名称や住所から緯度経度を特定
・Pythonコードの作成にあたってChatGPTさんのアドバイスをもらう
まず、四国88箇所霊場の住所をネットで検索しました。
さまざまな情報が存在していますが、ちょうど一覧表形式になっていた次のURLの情報を活用させていただきました。
URL:https://origamijapan.net/origami/2018/04/10/shikoku88/(ORIGAMI - 日本の伝統・伝承・和の心 四国霊場八十八ヶ所 一覧|お寺の名前と順番)
この一覧表をエクセルシートにコピペ(OpenStreetMapの精度がよく分からなかったので、念のため霊場名+県名をエクセル内で追加してみました)して、CSVファイルで保存し、GoogleDriveにアップロードして準備完了かな…。
importが必要なライブラリーは後刻整理しますが、暫定的にここまでとします。
まずは、GoogleDriveから四国88箇所に関するCSVファイルをPandasDataFrameとして読み込みます。
出力はこのようになりました。
id 札所番号 名称 霊 場 名 所 在 地 0 1 1 番札所 霊山寺 徳島県 竺和山 霊山寺(りょうぜんじ) 徳島県 鳴門市大麻町 板東字塚鼻126 1 2 2 番札所 極楽寺 徳島県 日照山 極楽寺(ごくらくじ) 徳島県 鳴門市大麻町桧字ダンノ上12 2 3 3 番札所 金泉寺 徳島県 亀光山 金泉寺(こんせんじ) 徳島県 板野郡板野町大寺字亀山下66 3 4 4 番札所 大日寺 徳島県 黒巌山 大日寺(だいにちじ) 徳島県 板野郡板野町黒谷字居内5 4 5 5 番札所 地蔵寺 徳島県 無尽山 地蔵寺(じぞうじ) 徳島県 板野郡板野町羅漢字林東5
名称列(例:霊山寺 徳島県)は個人的に追加した列です。
では、geocoder.OpenStreetMapで所在地から経度緯度を求めて、出力してみます。
出力は以下の通り。
竺和山 霊山寺(りょうぜんじ) , 徳島県 鳴門市大麻町 板東字塚鼻126 lat, lon: None 日照山 極楽寺(ごくらくじ) , 徳島県 鳴門市大麻町桧字ダンノ上12 lat, lon: None 亀光山 金泉寺(こんせんじ) , 徳島県 板野郡板野町大寺字亀山下66 lat, lon: None 黒巌山 大日寺(だいにちじ) , 徳島県 板野郡板野町黒谷字居内5 lat, lon: None 無尽山 地蔵寺(じぞうじ) , 徳島県 板野郡板野町羅漢字林東5 lat, lon: None 温泉山 安楽寺(あんらくじ) , 徳島県 板野郡上板町引野字寺ノ西北8 lat, lon: None 光明山 十楽寺(じゅうらくじ) , 徳島県 阿波市土成町 高尾字法教田58 lat, lon: None 普明山 熊谷寺(くまだにじ) , 徳島県 阿波市土成町 土成字前田185 lat, lon: None 正覚山 法輪寺(ほうりんじ) , 徳島県 阿波市土成町 土成字田中198-2 lat, lon: None 得度山 切幡寺(きりはたじ) , 徳島県 阿波市市場町 切幡字観音129 lat, lon: None 金剛山 藤井寺(ふじいでら) , 徳島県 吉野川市鴨島町飯尾1525 lat, lon: None 摩廬山 焼山寺(しょうさんじ) , 徳島県 名西郡神山町下分字地中318 lat, lon: None 大栗山 大日寺(だいにちじ) , 徳島県 徳島市一宮町西丁376 lat, lon: None 盛寿山 常楽寺(じょうらくじ) , 徳島県 徳島市国府町延命606 lat, lon: None 法養山 国分寺(こくぶんじ) , 徳島県 徳島市国府町矢野718-1 lat, lon: None 光耀山 観音寺(かんおんじ) , 徳島県 徳島市国府町字観音寺49 lat, lon: None 瑠璃山 井戸寺(いどじ) , 徳島県 徳島市国府町井戸80-1 lat, lon: None 母養山 恩山寺(おんざんじ) , 徳島県 小松島市田野町恩山寺谷40 lat, lon: None 橋池山 立江寺(たつえじ) , 徳島県 小松島市立江町字若松13 lat, lon: None 霊鷲山 鶴林寺(かくりんじ) , 徳島県 勝浦郡勝浦町鶴山14 lat, lon: None 舎心山 太竜寺(たいりゅうじ) , 徳島県 阿南市加茂町龍山2 lat, lon: None 白水山 平等寺(びょうどうじ) , 徳島県 阿南市新野町秋山177 lat, lon: None 医王山 薬王寺(やくおうじ) , 徳島県 海部郡日和佐町奥河内寺前285-1 lat, lon: None 室戸山 最御崎寺(ほつみさきじ) , 高知県 室戸市室戸岬町4058-1 lat, lon: None 宝珠山 津照寺(しんしょうじ) , 高知県 室戸市室津2644 lat, lon: None 竜頭山 金剛頂寺(こんごうちょうじ) , 高知県 室戸市元乙523 lat, lon: None 竹林山 神峰寺(こうのみねじ) , 高知県 安芸郡安田町唐の浜2594 lat, lon: None 法界山 大日寺(だいにちじ) , 高知県 香美郡野市町母代寺476 lat, lon: None 摩尼山 国分寺(こくぶんじ) , 高知県 南国市国分546 lat, lon: None 百々山 善楽寺(ぜんらくじ) , 高知県 高知市一宮2501 lat, lon: None 五台山 竹林寺(ちくりんじ) , 高知県 高知市五台山3577 lat, lon: None 八葉山 禅師峰寺(ぜんじぶじ) , 高知県 南国市十市308 lat, lon: None 高福山 雪蹊寺(せっけいじ) , 高知県 高知市長浜857-3 lat, lon: None 本尾山 種間寺(たねまじ) , 高知県 吾川郡春野町秋山72-1 lat, lon: None 医王山 清滝寺(きよたきじ) , 高知県 土佐市高岡町丁568-1 lat, lon: None 独鈷山 青竜寺(しょうりゅうじ) , 高知県 土佐市宇佐町 竜163 lat, lon: None 藤井山 岩本寺(いわもとじ) , 高知県 高岡郡四万十町茂串3-13 lat, lon: None 金剛福寺(こんごうふくじ) , 高知県 土佐清水市足摺岬214-1 lat, lon: None 赤亀山 延光寺(えんこうじ) , 高知県 宿毛市平田町中山390 lat, lon: None 平城山 観自在寺(かんじざいじ) , 愛媛県 南宇和郡愛南町御荘平城2253-1 lat, lon: None 稲荷山 龍光寺(りゅうこうじ) , 愛媛県 宇和島市三間町戸雁173 lat, lon: None 一理山 佛木寺(ぶつもくじ) , 愛媛県 宇和島市三間町1683 lat, lon: None 源光山 明石寺(めいせきじ) , 愛媛県 西予市宇和町明石104 lat, lon: None 管生山 大宝寺(たいほうじ) , 愛媛県 上浮穴郡久万高原町菅生二番耕地1173 lat, lon: None 海岸山 岩屋寺(いわやじ) , 愛媛県 上浮穴郡久万高原町七鳥1468 lat, lon: None 医王山 浄瑠璃寺(じょうるりじ) , 愛媛県 松山市浄瑠璃町282 lat, lon: None 熊野山 八坂寺(やさかじ) , 愛媛県 松山市浄瑠璃町八坂773 lat, lon: None 清滝山 西林寺(さいりんじ) , 愛媛県 松山市高井町1007 lat, lon: None 西林山 浄土寺(じょうどじ) , 愛媛県 松山市鷹子町1198 lat, lon: None 東山 繁多寺(はんたじ) , 愛媛県 松山市畑寺町32 lat, lon: None 熊野山 石手寺(いしてじ) , 愛媛県 松山市石手2-9-21 lat, lon: None 滝雲山 太山寺(たいさんじ) , 愛媛県 松山市太山寺町1730 lat, lon: None 須賀山 円明寺(えんみょうじ) , 愛媛県 松山市和気町1-182 lat, lon: None 近見山 延命寺(えんめいじ) , 愛媛県 今治市阿方甲636 lat, lon: None 別宮山 南光坊(なんこうぼう) , 愛媛県 今治市別宮町3-1 lat, lon: None 今輪山 泰山寺(たいさんじ) , 愛媛県 今治市小泉1-9-18 lat, lon: None 府頭山 栄福寺(えいふくじ) , 愛媛県 今治市玉川町八幡200 lat, lon: None 作札山 仙遊寺(せんゆうじ) , 愛媛県 今治市玉川町別所483 lat, lon: None 金光山 国分寺(こくぶんじ) , 愛媛県 今治市国分4-1-33 lat, lon: None 石鎚山 横峰寺(よこみねじ) , 愛媛県 西条市小松町石鎚2253 lat, lon: None 栴檀山 香園寺(こうおんじ) , 愛媛県 西条市小松町南川19 lat, lon: None 天養山 宝寿寺(ほうじゅじ) , 愛媛県 西条市小松町新屋敷428 lat, lon: None 密教山 吉祥寺(きちじょうじ) , 愛媛県 西条市氷見乙1048 lat, lon: None 石鉄山 前神寺(まえがみじ) , 愛媛県 西条市州之内甲1426 lat, lon: None 由霊山 三角寺(さんかくじ) , 愛媛県 四国中央市金田町三角寺75 lat, lon: None 巨鼈山 雲辺寺(うんぺんじ) , 徳島県 三好市池田町白地763-2 lat, lon: None 小松尾山 大興寺(だいこうじ) , 香川県 三豊市山本町辻4209 lat, lon: None 琴弾山 神恵院(じんねいん) , 香川県 観音寺市八幡町1-2-7 lat, lon: None 七宝山 観音寺(かんのんじ) , 香川県 観音寺市八幡町1-2-7 lat, lon: None 七宝山 本山寺(もとやまじ) , 香川県 三豊市豊中町本山甲1445 lat, lon: None 剣五山 弥谷寺(いやだにじ) , 香川県 三豊市三野町大見乙70 lat, lon: None 我拝師山 曼陀羅寺(まんだらじ) , 香川県 善通寺市吉原町1380-1 lat, lon: None 我拝師山 出釈迦寺(しゅっしゃかじ) , 香川県 善通寺市吉原町1091 lat, lon: None 医王山 甲山寺(こうやまじ) , 香川県 善通寺市弘田町1765-1 lat, lon: None 五岳山 善通寺(ぜんつうじ) , 香川県 善通寺市善通寺町3-3-1 lat, lon: [34.2257419, 133.77471579130435] 鶏足山 金倉寺(こんぞうじ) , 香川県 善通寺市金蔵寺町1160 lat, lon: None 桑多山 道隆寺(どうりゅうじ) , 香川県 仲多度郡多度津町北鴨1-3-30 lat, lon: None 仏光山 郷照寺(ごうしょうじ) , 香川県 綾歌郡宇多津町1435 lat, lon: None 金華山 高照院(てんのうじ) , 香川県 坂出市西庄町1713-2 lat, lon: None 白牛山 国分寺(こくぶんじ) , 香川県 高松市国分寺町国分2065 lat, lon: None 綾松山 白峰寺(しろみねじ) , 香川県 坂出市青海町2635 lat, lon: None 青峰山 根香寺(ねごろじ) , 香川県 高松市中山町1506 lat, lon: None 神毫山 一宮寺(いちのみやじ) , 香川県 高松市一宮町607 lat, lon: None 南面山 屋島寺(やしまじ) , 香川県 高松市屋島東町1808 lat, lon: None 五剣山 八栗寺(やくりじ) , 香川県 高松市牟礼町牟礼3416 lat, lon: None 補陀落山 志度寺(しどじ) , 香川県 さぬき市志度1102 lat, lon: None 補陀落山 長尾寺(ながおじ) , 香川県 さぬき市長尾西653 lat, lon: None 医王山 大窪寺(おおくぼじ) , 香川県 さぬき市多和兼割96 lat, lon: None
'lat, lon:'のうしろに経度・緯度が表示されるはずなのですが、全て'None'と記載されていることから、OpenStreerMapで当該住所を確認できなかったということでしょうか?それとも、県→市→町→番地という日本的表記にOpenStreetMapが対応していないのでしょうか?
そこで、ChatGPTにOpenStreetMapが日本語表記住所に対応しているかどうか?以下のように聞いてみました。
OpenStreetMapは一般的な住所フォーマットに対応していますが、日本の住所フォーマットにも対応しています。具体的には、OpenStreetMapでは「都道府県 + 市区町村 + 番地」という住所フォーマットをサポートしています。
Pythonで住所を表す文字列を解析するために、geocoderライブラリを使用する場合、以下のように住所を解析することができます:
pythonimport geocoder
address = '東京都千代田区永田町2丁目1番2号'
location = geocoder.osm(address).latlng
print(location)
この例では、geocoderのOSM(OpenStreetMap)モードを使用して、東京都千代田区永田町2丁目1番2号という住所から緯度経度を取得しています。
OpenStreetMapのAPIは、住所を検索するためのクエリパラメータとして、qパラメータをサポートしています。このパラメータを使用すると、日本の住所フォーマットで住所を検索することができます。例えば、以下のようなコードで住所を検索することができます:
pythonimport requests
address = '東京都千代田区永田町2丁目1番2号'
url = 'https://nominatim.openstreetmap.org/search?q={}&format=json'.format(address)
response = requests.get(url).json()
print(response[0]['lat'], response[0]['lon'])
この例では、requestsライブラリを使用して、OpenStreetMapのNominatim APIを呼び出しています。APIのレスポンスはJSON形式で返されるため、requests.get()メソッドの戻り値をjson()メソッドで解析します。最後に、緯度と経度を取得するために、レスポンスの最初の要素を参照しています。
このように、Pythonのgeocoderライブラリを使用して、OpenStreetMapの日本の住所フォーマットに対応した住所解析を実行することができます。
すごく丁寧に答えてくれます。内容も整っていて、感動です。噂には聞いていましたが、SampleCodeまでしっかりと教えてくれます。
どうやらOpenStreetMapは日本語表記の住所に対応しているようです。ということは四国88箇所霊場の住所は世界レベルの情報を扱っているOpenStreetMapとしては少々マニアックすぎるのかもしれません。
気を取り直して、霊場名で検索してみます。
出力は以下の通りです。
竺和山 霊山寺(りょうぜんじ) , 徳島県 鳴門市大麻町 板東字塚鼻126 lat, lon: None 日照山 極楽寺(ごくらくじ) , 徳島県 鳴門市大麻町桧字ダンノ上12 lat, lon: None 亀光山 金泉寺(こんせんじ) , 徳島県 板野郡板野町大寺字亀山下66 lat, lon: None 黒巌山 大日寺(だいにちじ) , 徳島県 板野郡板野町黒谷字居内5 lat, lon: None 無尽山 地蔵寺(じぞうじ) , 徳島県 板野郡板野町羅漢字林東5 lat, lon: None 温泉山 安楽寺(あんらくじ) , 徳島県 板野郡上板町引野字寺ノ西北8 lat, lon: None 光明山 十楽寺(じゅうらくじ) , 徳島県 阿波市土成町 高尾字法教田58 lat, lon: None 普明山 熊谷寺(くまだにじ) , 徳島県 阿波市土成町 土成字前田185 lat, lon: None 正覚山 法輪寺(ほうりんじ) , 徳島県 阿波市土成町 土成字田中198-2 lat, lon: None 得度山 切幡寺(きりはたじ) , 徳島県 阿波市市場町 切幡字観音129 lat, lon: None 金剛山 藤井寺(ふじいでら) , 徳島県 吉野川市鴨島町飯尾1525 lat, lon: [34.5772623, 135.6014815] 摩廬山 焼山寺(しょうさんじ) , 徳島県 名西郡神山町下分字地中318 lat, lon: None 大栗山 大日寺(だいにちじ) , 徳島県 徳島市一宮町西丁376 lat, lon: None 盛寿山 常楽寺(じょうらくじ) , 徳島県 徳島市国府町延命606 lat, lon: None 法養山 国分寺(こくぶんじ) , 徳島県 徳島市国府町矢野718-1 lat, lon: None 光耀山 観音寺(かんおんじ) , 徳島県 徳島市国府町字観音寺49 lat, lon: None 瑠璃山 井戸寺(いどじ) , 徳島県 徳島市国府町井戸80-1 lat, lon: None 母養山 恩山寺(おんざんじ) , 徳島県 小松島市田野町恩山寺谷40 lat, lon: None 橋池山 立江寺(たつえじ) , 徳島県 小松島市立江町字若松13 lat, lon: None 霊鷲山 鶴林寺(かくりんじ) , 徳島県 勝浦郡勝浦町鶴山14 lat, lon: None 舎心山 太竜寺(たいりゅうじ) , 徳島県 阿南市加茂町龍山2 lat, lon: None 白水山 平等寺(びょうどうじ) , 徳島県 阿南市新野町秋山177 lat, lon: None 医王山 薬王寺(やくおうじ) , 徳島県 海部郡日和佐町奥河内寺前285-1 lat, lon: None 室戸山 最御崎寺(ほつみさきじ) , 高知県 室戸市室戸岬町4058-1 lat, lon: None 宝珠山 津照寺(しんしょうじ) , 高知県 室戸市室津2644 lat, lon: None 竜頭山 金剛頂寺(こんごうちょうじ) , 高知県 室戸市元乙523 lat, lon: None 竹林山 神峰寺(こうのみねじ) , 高知県 安芸郡安田町唐の浜2594 lat, lon: None 法界山 大日寺(だいにちじ) , 高知県 香美郡野市町母代寺476 lat, lon: None 摩尼山 国分寺(こくぶんじ) , 高知県 南国市国分546 lat, lon: None 百々山 善楽寺(ぜんらくじ) , 高知県 高知市一宮2501 lat, lon: None 五台山 竹林寺(ちくりんじ) , 高知県 高知市五台山3577 lat, lon: [33.5465445, 133.5765875] 八葉山 禅師峰寺(ぜんじぶじ) , 高知県 南国市十市308 lat, lon: None 高福山 雪蹊寺(せっけいじ) , 高知県 高知市長浜857-3 lat, lon: None 本尾山 種間寺(たねまじ) , 高知県 吾川郡春野町秋山72-1 lat, lon: None 医王山 清滝寺(きよたきじ) , 高知県 土佐市高岡町丁568-1 lat, lon: None 独鈷山 青竜寺(しょうりゅうじ) , 高知県 土佐市宇佐町 竜163 lat, lon: None 藤井山 岩本寺(いわもとじ) , 高知県 高岡郡四万十町茂串3-13 lat, lon: None 金剛福寺(こんごうふくじ) , 高知県 土佐清水市足摺岬214-1 lat, lon: None 赤亀山 延光寺(えんこうじ) , 高知県 宿毛市平田町中山390 lat, lon: None 平城山 観自在寺(かんじざいじ) , 愛媛県 南宇和郡愛南町御荘平城2253-1 lat, lon: None 稲荷山 龍光寺(りゅうこうじ) , 愛媛県 宇和島市三間町戸雁173 lat, lon: None 一理山 佛木寺(ぶつもくじ) , 愛媛県 宇和島市三間町1683 lat, lon: None 源光山 明石寺(めいせきじ) , 愛媛県 西予市宇和町明石104 lat, lon: None 管生山 大宝寺(たいほうじ) , 愛媛県 上浮穴郡久万高原町菅生二番耕地1173 lat, lon: None 海岸山 岩屋寺(いわやじ) , 愛媛県 上浮穴郡久万高原町七鳥1468 lat, lon: None 医王山 浄瑠璃寺(じょうるりじ) , 愛媛県 松山市浄瑠璃町282 lat, lon: None 熊野山 八坂寺(やさかじ) , 愛媛県 松山市浄瑠璃町八坂773 lat, lon: None 清滝山 西林寺(さいりんじ) , 愛媛県 松山市高井町1007 lat, lon: None 西林山 浄土寺(じょうどじ) , 愛媛県 松山市鷹子町1198 lat, lon: None 東山 繁多寺(はんたじ) , 愛媛県 松山市畑寺町32 lat, lon: None 熊野山 石手寺(いしてじ) , 愛媛県 松山市石手2-9-21 lat, lon: None 滝雲山 太山寺(たいさんじ) , 愛媛県 松山市太山寺町1730 lat, lon: None 須賀山 円明寺(えんみょうじ) , 愛媛県 松山市和気町1-182 lat, lon: None 近見山 延命寺(えんめいじ) , 愛媛県 今治市阿方甲636 lat, lon: None 別宮山 南光坊(なんこうぼう) , 愛媛県 今治市別宮町3-1 lat, lon: None 今輪山 泰山寺(たいさんじ) , 愛媛県 今治市小泉1-9-18 lat, lon: None 府頭山 栄福寺(えいふくじ) , 愛媛県 今治市玉川町八幡200 lat, lon: None 作札山 仙遊寺(せんゆうじ) , 愛媛県 今治市玉川町別所483 lat, lon: None 金光山 国分寺(こくぶんじ) , 愛媛県 今治市国分4-1-33 lat, lon: [34.7058328, 135.5162337] 石鎚山 横峰寺(よこみねじ) , 愛媛県 西条市小松町石鎚2253 lat, lon: None 栴檀山 香園寺(こうおんじ) , 愛媛県 西条市小松町南川19 lat, lon: None 天養山 宝寿寺(ほうじゅじ) , 愛媛県 西条市小松町新屋敷428 lat, lon: None 密教山 吉祥寺(きちじょうじ) , 愛媛県 西条市氷見乙1048 lat, lon: None 石鉄山 前神寺(まえがみじ) , 愛媛県 西条市州之内甲1426 lat, lon: None 由霊山 三角寺(さんかくじ) , 愛媛県 四国中央市金田町三角寺75 lat, lon: None 巨鼈山 雲辺寺(うんぺんじ) , 徳島県 三好市池田町白地763-2 lat, lon: None 小松尾山 大興寺(だいこうじ) , 香川県 三豊市山本町辻4209 lat, lon: None 琴弾山 神恵院(じんねいん) , 香川県 観音寺市八幡町1-2-7 lat, lon: None 七宝山 観音寺(かんのんじ) , 香川県 観音寺市八幡町1-2-7 lat, lon: None 七宝山 本山寺(もとやまじ) , 香川県 三豊市豊中町本山甲1445 lat, lon: None 剣五山 弥谷寺(いやだにじ) , 香川県 三豊市三野町大見乙70 lat, lon: None 我拝師山 曼陀羅寺(まんだらじ) , 香川県 善通寺市吉原町1380-1 lat, lon: None 我拝師山 出釈迦寺(しゅっしゃかじ) , 香川県 善通寺市吉原町1091 lat, lon: None 医王山 甲山寺(こうやまじ) , 香川県 善通寺市弘田町1765-1 lat, lon: None 五岳山 善通寺(ぜんつうじ) , 香川県 善通寺市善通寺町3-3-1 lat, lon: None 鶏足山 金倉寺(こんぞうじ) , 香川県 善通寺市金蔵寺町1160 lat, lon: None 桑多山 道隆寺(どうりゅうじ) , 香川県 仲多度郡多度津町北鴨1-3-30 lat, lon: None 仏光山 郷照寺(ごうしょうじ) , 香川県 綾歌郡宇多津町1435 lat, lon: None 金華山 高照院(てんのうじ) , 香川県 坂出市西庄町1713-2 lat, lon: None 白牛山 国分寺(こくぶんじ) , 香川県 高松市国分寺町国分2065 lat, lon: None 綾松山 白峰寺(しろみねじ) , 香川県 坂出市青海町2635 lat, lon: None 青峰山 根香寺(ねごろじ) , 香川県 高松市中山町1506 lat, lon: None 神毫山 一宮寺(いちのみやじ) , 香川県 高松市一宮町607 lat, lon: None 南面山 屋島寺(やしまじ) , 香川県 高松市屋島東町1808 lat, lon: None 五剣山 八栗寺(やくりじ) , 香川県 高松市牟礼町牟礼3416 lat, lon: None 補陀落山 志度寺(しどじ) , 香川県 さぬき市志度1102 lat, lon: None 補陀落山 長尾寺(ながおじ) , 香川県 さぬき市長尾西653 lat, lon: None 医王山 大窪寺(おおくぼじ) , 香川県 さぬき市多和兼割96 lat, lon: None
藤井寺[34.5772623, 135.6014815]、竹林寺 [33.5465445, 133.5765875]、国分寺[34.7058328, 135.5162337]だけ数値が出ました。
ChatGPTに藤井寺の緯度経度について聞きました。
北緯34.5772623、東経135.6014815は、日本の大阪府大阪市中央区の地点です。具体的には、この地点は大阪市中央区道修町2丁目9番14号付近に位置しています。
周辺には、大阪城や大阪市役所、なんばグランド花月などの観光スポットや、商業施設や住宅街があります。また、大阪市内には美味しい食べ物やお土産などもたくさんありますので、観光に訪れる方にはおすすめのエリアです。
北緯34.5772623、東経135.6014815から藤井寺という地名があることは確認できますが、藤井寺という寺社があるかどうかは不明です。
藤井寺という地名は、大阪府東大阪市と奈良県葛城市にまたがる地域にあります。この地域には、藤井寺城跡や藤井寺公園、藤井寺市役所などの施設がありますが、藤井寺という具体的な寺社については調べても情報が得られませんでした。
もし、藤井寺という寺社がある場合は、詳細な場所や情報があれば、再度検索を行うことができます。
この緯度経度は大阪府らしく近くに藤井寺という地名があるようです。
続いて、竹林寺!これはジャストミートしたみたいです。
調べたところ、北緯33.5465445、東経133.5765875には、竹林寺という寺院が存在します。この寺院は、日本の高知県四万十市黒ノ川町にあります。
竹林寺は、臨済宗妙心寺派の寺院で、四国八十八箇所霊場の第三十番札所になっています。境内には、大師堂や庫裏、山門などがあり、静かな山間の風景を楽しむことができます。また、竹林寺の周辺には、自然豊かな四万十川の流れや、四国山地の景色も見ることができます。
国分寺[34.7058328, 135.5162337]はChatGPTによると大阪府大阪市らしいです。
この検索方法ではまったく使えないので、霊場名のうしろに県名を入れたデータ列を自分で作成し、再検索してみました。
出力はこちら。
霊山寺 徳島県 , 徳島県 鳴門市大麻町 板東字塚鼻126 lat, lon: [26.8490005, 119.5702247] 極楽寺 徳島県 , 徳島県 鳴門市大麻町桧字ダンノ上12 lat, lon: [35.3092118, 139.5286725] 金泉寺 徳島県 , 徳島県 板野郡板野町大寺字亀山下66 lat, lon: [34.1529667, 134.4902033] 大日寺 徳島県 , 徳島県 板野郡板野町黒谷字居内5 lat, lon: [34.038105599999994, 134.46258518184646] 地蔵寺 徳島県 , 徳島県 板野郡板野町羅漢字林東5 lat, lon: [34.07603225, 134.58524816906916] 安楽寺 徳島県 , 徳島県 板野郡上板町引野字寺ノ西北8 lat, lon: [35.83841555, 139.27538925] 十楽寺 徳島県 , 徳島県 阿波市土成町 高尾字法教田58 lat, lon: [35.0638987, 135.8763788] 熊谷寺 徳島県 , 徳島県 阿波市土成町 土成字前田185 lat, lon: [36.146302750000004, 139.3834687194688] 法輪寺 徳島県 , 徳島県 阿波市土成町 土成字田中198-2 lat, lon: [35.010001, 135.677215] 切幡寺 徳島県 , 徳島県 阿波市市場町 切幡字観音129 lat, lon: [34.4006552, 133.2110846] 藤井寺 徳島県 , 徳島県 吉野川市鴨島町飯尾1525 lat, lon: [34.57373475, 133.73728775270988] 焼山寺 徳島県 , 徳島県 名西郡神山町下分字地中318 lat, lon: [33.985057, 134.310411] 大日寺 徳島県 , 徳島県 徳島市一宮町西丁376 lat, lon: [34.038105599999994, 134.46258518184646] 常楽寺 徳島県 , 徳島県 徳島市国府町延命606 lat, lon: [35.3482067, 139.5407424] 国分寺 徳島県 , 徳島県 徳島市国府町矢野718-1 lat, lon: [35.48001445, 135.78861594346432] 観音寺 徳島県 , 徳島県 徳島市国府町字観音寺49 lat, lon: [34.0612512, 134.54505145000002] 井戸寺 徳島県 , 徳島県 徳島市国府町井戸80-1 lat, lon: [34.061114, 134.258125] 恩山寺 徳島県 , 徳島県 小松島市田野町恩山寺谷40 lat, lon: [33.9860981, 134.5778614] 立江寺 徳島県 , 徳島県 小松島市立江町字若松13 lat, lon: None 鶴林寺 徳島県 , 徳島県 勝浦郡勝浦町鶴山14 lat, lon: [35.5012402, 139.4629112] 太竜寺 徳島県 , 徳島県 阿南市加茂町龍山2 lat, lon: [34.0720771, 134.55370197224073] 平等寺 徳島県 , 徳島県 阿南市新野町秋山177 lat, lon: [33.851728949999995, 134.58250779182066] 薬王寺 徳島県 , 徳島県 海部郡日和佐町奥河内寺前285-1 lat, lon: [35.5603633, 139.5342141] 最御崎寺 高知県 , 高知県 室戸市室戸岬町4058-1 lat, lon: [33.2490846, 134.1759439] 津照寺 高知県 , 高知県 室戸市室津2644 lat, lon: [33.565381900000006, 133.53528266042073] 金剛頂寺 高知県 , 高知県 室戸市元乙523 lat, lon: None 神峰寺 高知県 , 高知県 安芸郡安田町唐の浜2594 lat, lon: [33.4675303, 133.9749882] 大日寺 高知県 , 高知県 香美郡野市町母代寺476 lat, lon: [33.57769055, 133.70523012135828] 国分寺 高知県 , 高知県 南国市国分546 lat, lon: [34.0252747, 133.0242384] 善楽寺 高知県 , 高知県 高知市一宮2501 lat, lon: [35.3177121, 136.9439243] 竹林寺 高知県 , 高知県 高知市五台山3577 lat, lon: [33.5465445, 133.5765875] 禅師峰寺 高知県 , 高知県 南国市十市308 lat, lon: [34.9999604, 135.7680842] 雪蹊寺 高知県 , 高知県 高知市長浜857-3 lat, lon: [33.5437543, 133.54175613260276] 種間寺 高知県 , 高知県 吾川郡春野町秋山72-1 lat, lon: [33.5437543, 133.54175613260276] 清滝寺 高知県 , 高知県 土佐市高岡町丁568-1 lat, lon: [33.42593935, 133.4508805076673] 青竜寺 高知県 , 高知県 土佐市宇佐町 竜163 lat, lon: [33.42593935, 133.4508805076673] 岩本寺 高知県 , 高知県 高岡郡四万十町茂串3-13 lat, lon: [33.2081737, 133.13466725867693] 金剛福寺 高知県 , 高知県 土佐清水市足摺岬214-1 lat, lon: [35.1215903, 136.9360335] 延光寺 高知県 , 高知県 宿毛市平田町中山390 lat, lon: [35.1215903, 136.9360335] 観自在寺 愛媛県 , 愛媛県 南宇和郡愛南町御荘平城2253-1 lat, lon: None 龍光寺 愛媛県 , 愛媛県 宇和島市三間町戸雁173 lat, lon: [33.834646, 132.764797] 佛木寺 愛媛県 , 愛媛県 宇和島市三間町1683 lat, lon: [34.0364431, 133.0091196] 明石寺 愛媛県 , 愛媛県 西予市宇和町明石104 lat, lon: [33.8916797, 132.7397885] 大宝寺 愛媛県 , 愛媛県 上浮穴郡久万高原町菅生二番耕地1173 lat, lon: [33.84169675, 132.74221817531122] 岩屋寺 愛媛県 , 愛媛県 上浮穴郡久万高原町七鳥1468 lat, lon: [33.6578348, 132.9862943] 浄瑠璃寺 愛媛県 , 愛媛県 松山市浄瑠璃町282 lat, lon: None 八坂寺 愛媛県 , 愛媛県 松山市浄瑠璃町八坂773 lat, lon: [33.757975, 132.8128077] 西林寺 愛媛県 , 愛媛県 松山市高井町1007 lat, lon: [35.3177121, 136.9439243] 浄土寺 愛媛県 , 愛媛県 松山市鷹子町1198 lat, lon: [34.0468397, 132.9927153009765] 繁多寺 愛媛県 , 愛媛県 松山市畑寺町32 lat, lon: [33.46302005, 132.42194126001942] 石手寺 愛媛県 , 愛媛県 松山市石手2-9-21 lat, lon: [33.8467695, 132.7963926] 太山寺 愛媛県 , 愛媛県 松山市太山寺町1730 lat, lon: [33.8839201, 132.7203772] 円明寺 愛媛県 , 愛媛県 松山市和気町1-182 lat, lon: None 延命寺 愛媛県 , 愛媛県 今治市阿方甲636 lat, lon: [34.0668412, 132.9639973] 南光坊 愛媛県 , 愛媛県 今治市別宮町3-1 lat, lon: [34.0682265, 132.9953058] 泰山寺 愛媛県 , 愛媛県 今治市小泉1-9-18 lat, lon: [33.8839201, 132.7203772] 栄福寺 愛媛県 , 愛媛県 今治市玉川町八幡200 lat, lon: [34.0297786, 132.9782314] 仙遊寺 愛媛県 , 愛媛県 今治市玉川町別所483 lat, lon: [34.0132837, 132.9773496] 国分寺 愛媛県 , 愛媛県 今治市国分4-1-33 lat, lon: [34.0252747, 133.0242384] 横峰寺 愛媛県 , 愛媛県 西条市小松町石鎚2253 lat, lon: [33.8376181, 133.1110909] 香園寺 愛媛県 , 愛媛県 西条市小松町南川19 lat, lon: [33.893603, 133.1034109] 宝寿寺 愛媛県 , 愛媛県 西条市小松町新屋敷428 lat, lon: [33.8973011, 133.1151159] 吉祥寺 愛媛県 , 愛媛県 西条市氷見乙1048 lat, lon: [33.8957732, 133.1291511] 前神寺 愛媛県 , 愛媛県 西条市州之内甲1426 lat, lon: [33.8903607, 133.1605615] 三角寺 愛媛県 , 愛媛県 四国中央市金田町三角寺75 lat, lon: [33.9673725, 133.5866363] 雲辺寺 徳島県 , 徳島県 三好市池田町白地763-2 lat, lon: [34.0351293, 133.7229222] 大興寺 香川県 , 香川県 三豊市山本町辻4209 lat, lon: [34.1022869, 133.71914297374104] 神恵院 香川県 , 香川県 観音寺市八幡町1-2-7 lat, lon: [34.13398665, 133.64730950356878] 観音寺 香川県 , 香川県 観音寺市八幡町1-2-7 lat, lon: [34.124273, 133.6554569] 本山寺 香川県 , 香川県 三豊市豊中町本山甲1445 lat, lon: [34.139606549999996, 133.6937985133103] 弥谷寺 香川県 , 香川県 三豊市三野町大見乙70 lat, lon: [34.230281, 133.7241876] 曼荼羅寺 香川県 , 香川県 善通寺市吉原町1380-1 lat, lon: [34.2233323, 133.7503177] 出釈迦寺 香川県 , 香川県 善通寺市吉原町1091 lat, lon: [34.2191392, 133.7502513] 甲山寺 香川県 , 香川県 善通寺市弘田町1765-1 lat, lon: [34.2330662, 133.7657237] 善通寺 香川県 , 香川県 善通寺市善通寺町3-3-1 lat, lon: [34.2299924, 133.78922] 金倉寺 香川県 , 香川県 善通寺市金蔵寺町1160 lat, lon: [34.2495723, 133.7809675] 道隆寺 香川県 , 香川県 仲多度郡多度津町北鴨1-3-30 lat, lon: [34.27669405, 133.76289294017013] 郷照寺 香川県 , 香川県 綾歌郡宇多津町1435 lat, lon: None 高照院 香川県 , 香川県 坂出市西庄町1713-2 lat, lon: [34.3186022, 133.8586386] 国分寺 香川県 , 香川県 高松市国分寺町国分2065 lat, lon: [34.3030901, 133.9441627] 白峯寺 香川県 , 香川県 坂出市青海町2635 lat, lon: [34.3344627, 133.9270371] 根来寺 香川県 , 香川県 高松市中山町1506 lat, lon: None 一宮寺 香川県 , 香川県 高松市一宮町607 lat, lon: [34.2863763, 134.0265283971522] 屋島寺 香川県 , 香川県 高松市屋島東町1808 lat, lon: [34.3574992, 134.10106303395688] 八栗寺 香川県 , 香川県 高松市牟礼町牟礼3416 lat, lon: None 志度寺 香川県 , 香川県 さぬき市志度1102 lat, lon: [34.3242502, 134.1796409] 長尾寺 香川県 , 香川県 さぬき市長尾西653 lat, lon: [34.2666753, 134.1717088] 大窪寺 香川県 , 香川県 さぬき市多和兼割96 lat, lon: [34.1913639, 134.2068728]
いくつかNoneが残っていますが、まあまあ経度・緯度は出力されるようになりました。
でも、最初の行を見るとなんと北緯26.8…、東経119.5…という日本国内ではあり得ない数値が出力されています。GoogleMapで場所を確認してみると「中華人民共和国 福建省 寧徳市 蕉城区」と全く霊山寺には関係なさそうな住所がでてきました。
なので、名称の後ろに「日本」という単語を加えて精度を上げてみようと思いました。
出力はこちら。
霊山寺 徳島県 , 徳島県 鳴門市大麻町 板東字塚鼻126 lat, lon: None 極楽寺 徳島県 , 徳島県 鳴門市大麻町桧字ダンノ上12 lat, lon: [35.3092118, 139.5286725] 金泉寺 徳島県 , 徳島県 板野郡板野町大寺字亀山下66 lat, lon: [34.1529667, 134.4902033] 大日寺 徳島県 , 徳島県 板野郡板野町黒谷字居内5 lat, lon: [34.038105599999994, 134.46258518184646] 地蔵寺 徳島県 , 徳島県 板野郡板野町羅漢字林東5 lat, lon: [34.07603225, 134.58524816906916] 安楽寺 徳島県 , 徳島県 板野郡上板町引野字寺ノ西北8 lat, lon: [35.4478005, 136.033438] 十楽寺 徳島県 , 徳島県 阿波市土成町 高尾字法教田58 lat, lon: [35.0638987, 135.8763788] 熊谷寺 徳島県 , 徳島県 阿波市土成町 土成字前田185 lat, lon: [36.146302750000004, 139.3834687194688] 法輪寺 徳島県 , 徳島県 阿波市土成町 土成字田中198-2 lat, lon: [35.010001, 135.677215] 切幡寺 徳島県 , 徳島県 阿波市市場町 切幡字観音129 lat, lon: [34.4006552, 133.2110846] 藤井寺 徳島県 , 徳島県 吉野川市鴨島町飯尾1525 lat, lon: [34.57373475, 133.73728775270988] 焼山寺 徳島県 , 徳島県 名西郡神山町下分字地中318 lat, lon: [33.985057, 134.310411] 大日寺 徳島県 , 徳島県 徳島市一宮町西丁376 lat, lon: [34.038105599999994, 134.46258518184646] 常楽寺 徳島県 , 徳島県 徳島市国府町延命606 lat, lon: [35.3482067, 139.5407424] 国分寺 徳島県 , 徳島県 徳島市国府町矢野718-1 lat, lon: [35.48001445, 135.78861594346432] 観音寺 徳島県 , 徳島県 徳島市国府町字観音寺49 lat, lon: [34.0612512, 134.54505145000002] 井戸寺 徳島県 , 徳島県 徳島市国府町井戸80-1 lat, lon: [34.70657555, 135.21070011427173] 恩山寺 徳島県 , 徳島県 小松島市田野町恩山寺谷40 lat, lon: [33.9860981, 134.5778614] 立江寺 徳島県 , 徳島県 小松島市立江町字若松13 lat, lon: None 鶴林寺 徳島県 , 徳島県 勝浦郡勝浦町鶴山14 lat, lon: [35.5012402, 139.4629112] 太竜寺 徳島県 , 徳島県 阿南市加茂町龍山2 lat, lon: [34.0720771, 134.55370197224073] 平等寺 徳島県 , 徳島県 阿南市新野町秋山177 lat, lon: [33.851728949999995, 134.58250779182066] 薬王寺 徳島県 , 徳島県 海部郡日和佐町奥河内寺前285-1 lat, lon: [35.5603633, 139.5342141] 最御崎寺 高知県 , 高知県 室戸市室戸岬町4058-1 lat, lon: [33.2490846, 134.1759439] 津照寺 高知県 , 高知県 室戸市室津2644 lat, lon: [33.565381900000006, 133.53528266042073] 金剛頂寺 高知県 , 高知県 室戸市元乙523 lat, lon: None 神峰寺 高知県 , 高知県 安芸郡安田町唐の浜2594 lat, lon: [33.429891, 134.008901] 大日寺 高知県 , 高知県 香美郡野市町母代寺476 lat, lon: [33.57769055, 133.70523012135828] 国分寺 高知県 , 高知県 南国市国分546 lat, lon: [34.0252747, 133.0242384] 善楽寺 高知県 , 高知県 高知市一宮2501 lat, lon: None 竹林寺 高知県 , 高知県 高知市五台山3577 lat, lon: None 禅師峰寺 高知県 , 高知県 南国市十市308 lat, lon: None 雪蹊寺 高知県 , 高知県 高知市長浜857-3 lat, lon: [33.5437543, 133.54175613260276] 種間寺 高知県 , 高知県 吾川郡春野町秋山72-1 lat, lon: [33.429891, 134.008901] 清滝寺 高知県 , 高知県 土佐市高岡町丁568-1 lat, lon: [33.42593935, 133.4508805076673] 青竜寺 高知県 , 高知県 土佐市宇佐町 竜163 lat, lon: [33.42593935, 133.4508805076673] 岩本寺 高知県 , 高知県 高岡郡四万十町茂串3-13 lat, lon: [33.2081737, 133.13466725867693] 金剛福寺 高知県 , 高知県 土佐清水市足摺岬214-1 lat, lon: None 延光寺 高知県 , 高知県 宿毛市平田町中山390 lat, lon: None 観自在寺 愛媛県 , 愛媛県 南宇和郡愛南町御荘平城2253-1 lat, lon: None 龍光寺 愛媛県 , 愛媛県 宇和島市三間町戸雁173 lat, lon: None 佛木寺 愛媛県 , 愛媛県 宇和島市三間町1683 lat, lon: None 明石寺 愛媛県 , 愛媛県 西予市宇和町明石104 lat, lon: [33.8916797, 132.7397885] 大宝寺 愛媛県 , 愛媛県 上浮穴郡久万高原町菅生二番耕地1173 lat, lon: [33.84169675, 132.74221817531122] 岩屋寺 愛媛県 , 愛媛県 上浮穴郡久万高原町七鳥1468 lat, lon: [33.6578348, 132.9862943] 浄瑠璃寺 愛媛県 , 愛媛県 松山市浄瑠璃町282 lat, lon: None 八坂寺 愛媛県 , 愛媛県 松山市浄瑠璃町八坂773 lat, lon: None 西林寺 愛媛県 , 愛媛県 松山市高井町1007 lat, lon: None 浄土寺 愛媛県 , 愛媛県 松山市鷹子町1198 lat, lon: [34.0468397, 132.9927153009765] 繁多寺 愛媛県 , 愛媛県 松山市畑寺町32 lat, lon: [33.46302005, 132.42194126001942] 石手寺 愛媛県 , 愛媛県 松山市石手2-9-21 lat, lon: [33.8467695, 132.7963926] 太山寺 愛媛県 , 愛媛県 松山市太山寺町1730 lat, lon: [33.8839201, 132.7203772] 円明寺 愛媛県 , 愛媛県 松山市和気町1-182 lat, lon: None 延命寺 愛媛県 , 愛媛県 今治市阿方甲636 lat, lon: [34.0668412, 132.9639973] 南光坊 愛媛県 , 愛媛県 今治市別宮町3-1 lat, lon: [34.0682265, 132.9953058] 泰山寺 愛媛県 , 愛媛県 今治市小泉1-9-18 lat, lon: [33.8839201, 132.7203772] 栄福寺 愛媛県 , 愛媛県 今治市玉川町八幡200 lat, lon: [34.0297786, 132.9782314] 仙遊寺 愛媛県 , 愛媛県 今治市玉川町別所483 lat, lon: [34.0132837, 132.9773496] 国分寺 愛媛県 , 愛媛県 今治市国分4-1-33 lat, lon: [34.0252747, 133.0242384] 横峰寺 愛媛県 , 愛媛県 西条市小松町石鎚2253 lat, lon: [33.8376181, 133.1110909] 香園寺 愛媛県 , 愛媛県 西条市小松町南川19 lat, lon: [33.893603, 133.1034109] 宝寿寺 愛媛県 , 愛媛県 西条市小松町新屋敷428 lat, lon: [33.8973011, 133.1151159] 吉祥寺 愛媛県 , 愛媛県 西条市氷見乙1048 lat, lon: [33.8957732, 133.1291511] 前神寺 愛媛県 , 愛媛県 西条市州之内甲1426 lat, lon: [33.8903607, 133.1605615] 三角寺 愛媛県 , 愛媛県 四国中央市金田町三角寺75 lat, lon: [33.9673725, 133.5866363] 雲辺寺 徳島県 , 徳島県 三好市池田町白地763-2 lat, lon: [34.0351293, 133.7229222] 大興寺 香川県 , 香川県 三豊市山本町辻4209 lat, lon: [34.1022869, 133.71914297374104] 神恵院 香川県 , 香川県 観音寺市八幡町1-2-7 lat, lon: [34.13398665, 133.64730950356878] 観音寺 香川県 , 香川県 観音寺市八幡町1-2-7 lat, lon: [34.124273, 133.6554569] 本山寺 香川県 , 香川県 三豊市豊中町本山甲1445 lat, lon: [34.139606549999996, 133.6937985133103] 弥谷寺 香川県 , 香川県 三豊市三野町大見乙70 lat, lon: [34.230281, 133.7241876] 曼荼羅寺 香川県 , 香川県 善通寺市吉原町1380-1 lat, lon: [34.2233323, 133.7503177] 出釈迦寺 香川県 , 香川県 善通寺市吉原町1091 lat, lon: [34.2191392, 133.7502513] 甲山寺 香川県 , 香川県 善通寺市弘田町1765-1 lat, lon: [34.2330662, 133.7657237] 善通寺 香川県 , 香川県 善通寺市善通寺町3-3-1 lat, lon: [34.2299924, 133.78922] 金倉寺 香川県 , 香川県 善通寺市金蔵寺町1160 lat, lon: [34.2495723, 133.7809675] 道隆寺 香川県 , 香川県 仲多度郡多度津町北鴨1-3-30 lat, lon: [34.27669405, 133.76289294017013] 郷照寺 香川県 , 香川県 綾歌郡宇多津町1435 lat, lon: None 高照院 香川県 , 香川県 坂出市西庄町1713-2 lat, lon: [34.3186022, 133.8586386] 国分寺 香川県 , 香川県 高松市国分寺町国分2065 lat, lon: [34.3030901, 133.9441627] 白峯寺 香川県 , 香川県 坂出市青海町2635 lat, lon: [34.3344627, 133.9270371] 根来寺 香川県 , 香川県 高松市中山町1506 lat, lon: None 一宮寺 香川県 , 香川県 高松市一宮町607 lat, lon: [34.2863763, 134.0265283971522] 屋島寺 香川県 , 香川県 高松市屋島東町1808 lat, lon: [34.3574992, 134.10106303395688] 八栗寺 香川県 , 香川県 高松市牟礼町牟礼3416 lat, lon: None 志度寺 香川県 , 香川県 さぬき市志度1102 lat, lon: [34.3242502, 134.1796409] 長尾寺 香川県 , 香川県 さぬき市長尾西653 lat, lon: [34.2666753, 134.1717088] 大窪寺 香川県 , 香川県 さぬき市多和兼割96 lat, lon: [34.1913639, 134.2068728]
変な緯度経度は消滅しましたが、先ほどの霊山寺も含めて、'None'表示が増えてしまいました。
番地の数字が全角になっていることが原因の可能性があるので、経度緯度表示がNoneの住所について、数字を半角にして直接geocoderに入力してみます。
結果は以下の通り
lat, lon: None
OpenStreetMapはここまで細かい住所を格納していないということで割り切ってあきらめます。
そこで、なるべく完全を期したいので、寺院名で検索が不可能であった場合のみ、町名の代表地点の緯度経度を示すような形に書き換えます。このため、もとのエクセルファイルに立ち返って住所列に記載されている番地を削除しようかなぁと思ったのですが、ここは神様、仏様、ChatGPT様にまずは聞いてみることにしました。
はい、Pythonで住所から番地を取り除くことはできます。このタスクを実行するために、正規表現ライブラリを使用することができます。
以下は、住所から番地を取り除くための基本的な例です。
import re address = "〒123-4567 東京都渋谷区神宮前1-1-1 住友不動産表参道ビル" # 正規表現パターンを使用して番地を抽出する pattern = r'\d{1,2}[-\d]{0,4}\s*[番号号]?(?![\d-])' match = re.search(pattern, address) if match: # 番地が見つかった場合は、住所から番地を削除する address = re.sub(pattern, '', address).strip() print(address)
この例では、正規表現パターンを使用して番地を抽出し、住所から番地を削除しています。この正規表現パターンは、日本の住所に一般的に使用される番地の形式に一致します。番地を見つけた場合、re.sub()
関数を使用して住所から番地を削除します。
ただし、住所の形式によっては、この方法がうまくいかない場合があります。住所の形式に応じて正規表現パターンを調整する必要がある場合があります。
恐るべしChatGPT。きちんと解説つきで、回答してくれました。でも、「正規表現」というのがよくわからなかったので、さらに質問します。
この正規表現パターンは、日本の住所から番地を抽出するために使用されます。以下は各部分の説明です。
\d{1,2}
: 1桁または2桁の数字に一致します。これは、番地が1桁または2桁の場合をカバーするためです。[-\d]{0,4}
: "-"または数字のいずれかが0回以上、4回以下繰り返されることに一致します。これは、"番地"または"号"の後ろに"1-2"や"1-2-3"のような番地の表記がある場合をカバーするためです。\s*
: 0回以上の空白文字に一致します。これは、番地の前後に余分な空白がある場合をカバーするためです。[番号号]?
: "番"または"号"が0回または1回現れることに一致します。これは、住所の表記に"番地"または"号"が含まれている場合をカバーするためです。(?![\d-])
: 次の文字が数字または"-"でない場合に一致します。これにより、"1-2-3"のような番地の表記以外にも、"1-2-"のように不完全な番地の表記がある場合にも対応することができます。
つまり、この正規表現パターンは、日本の住所から番地を表す文字列を抽出するためのものであり、いくつかの異なる番地表記に対応できるように設計されています。
うわー、丁寧なご回答ありがとうございました。
アドバイスいただいたコードをそのまま実行してみました。
出力は以下の通り。
〒123-東京都渋谷区神宮前住友不動産表参道ビル
冒頭に郵便番号の残り滓が見えます。今回、郵便番号は関係ないので、そのままにしておいてもよかったのですが、せっかくの機会なので、さらに質問しました。
確かに、このコードでは、住所の先頭にある郵便番号が残ってしまう可能性があります。
住所から郵便番号を取り除くには、以下のように、正規表現パターンを変更して、郵便番号を検索し、住所から削除する必要があります。
import re address = "〒123-4567 東京都渋谷区神宮前1-1-1 住友不動産表参道ビル" # 郵便番号を取り除く pattern_zipcode = r'\d{3}-\d{4}' address = re.sub(pattern_zipcode, '', address).strip() # 番地を取り除く pattern_address = r'\d{1,2}[-\d]{0,4}\s*[番号号]?(?![\d-])' match = re.search(pattern_address, address) if match: address = re.sub(pattern_address, '', address).strip() print(address)
この例では、まず郵便番号を取り除くために、\d{3}-\d{4}
という正規表現パターンを使用しています。これにより、3桁の数字、ハイフン、4桁の数字のパターンに一致する文字列(日本の郵便番号の形式)が住所から削除されます。その後、先に紹介した番地の正規表現パターンを使用して、住所から番地を削除します。最後に、余分な空白を削除して、正しい住所を取得します。
提案のコードを実行すると、以下の出力になりました。
〒
東京都渋谷区神宮前住友不動産表参道ビル
惜しい!あとは頭の’〒'マークを削除するだけです。ここまできたら、最後までChatGPTくんにおつきあいいただきます。
はい、郵便番号の前にある"〒"マークを削除することができます。以下は、コードの修正例です。
import re address = "〒123-4567 東京都渋谷区神宮前1-1-1 住友不動産表参道ビル" # 郵便番号と"〒"マークを取り除く pattern_zipcode = r'〒\d{3}-\d{4}' address = re.sub(pattern_zipcode, '', address).strip() # 番地を取り除く pattern_address = r'\d{1,2}[-\d]{0,4}\s*[番号号]?(?![\d-])' match = re.search(pattern_address, address) if match: address = re.sub(pattern_address, '', address).strip() print(address)この修正例では、\d{3}-\d{4}
の代わりに、〒\d{3}-\d{4}
という正規表現パターンを使用して、"〒"マークと日本の郵便番号の形式に一致する文字列を住所から削除します。その後、先に紹介した番地の正規表現パターンを使用して、住所から番地を削除し、正しい住所を取得します。
提案コードを実行すると、出力はこうなりました。
東京都渋谷区神宮前住友不動産表参道ビル
エクセレレント~~~~!!!!(ちなみにChatGPTさまにお聞きしたところ、数字は全角でも半角でも問題ないそうです。)これでもとのエクセルファイルを修正するという前時代的な操作なしに番地を修正できそうです。
では、本題に戻って、霊場の名称+県名で経度緯度を特定できない場合には住所から番地を覗いて市町村名から代表地点の経度緯度を求めるコードに修正します。
1行目の出力は「霊山寺 徳島県 , 徳島県 鳴門市大麻町 板東字塚鼻 lat, lon: None」ということで、これでも経度緯度は出力されません。この「徳島県 鳴門市大麻町 板東字塚鼻」でも細かすぎるみたいなので、あとはこの住所の文字列を右端から消していって、経度緯度が特定できるまで繰り返すことにしました。
以下、出力です。
霊山寺 徳島県 , 徳島県 鳴門市大麻町 板東 lat, lon: [34.1841514, 134.5173311]
極楽寺 徳島県 , 徳島県 鳴門市大麻町桧字ダンノ上 lat, lon: [35.3092118, 139.5286725]
金泉寺 徳島県 , 徳島県 板野郡板野町大寺字亀山下 lat, lon: [34.1529667, 134.4902033]
大日寺 徳島県 , 徳島県 板野郡板野町黒谷字居内 lat, lon: [34.038105599999994, 134.46258518184646]
地蔵寺 徳島県 , 徳島県 板野郡板野町羅漢字林東 lat, lon: [34.07603225, 134.58524816906916]
安楽寺 徳島県 , 徳島県 板野郡上板町引野字寺ノ西北 lat, lon: [35.4478005, 136.033438]
十楽寺 徳島県 , 徳島県 阿波市土成町 高尾字法教田 lat, lon: [35.0638987, 135.8763788]
熊谷寺 徳島県 , 徳島県 阿波市土成町 土成字前田 lat, lon: [36.146302750000004, 139.3834687194688]
法輪寺 徳島県 , 徳島県 阿波市土成町 土成字田中 lat, lon: [35.010001, 135.677215]
切幡寺 徳島県 , 徳島県 阿波市市場町 切幡字観音 lat, lon: [34.4006552, 133.2110846]
藤井寺 徳島県 , 徳島県 吉野川市鴨島町飯尾 lat, lon: [34.57373475, 133.73728775270988]
焼山寺 徳島県 , 徳島県 名西郡神山町下分字地中 lat, lon: [33.985057, 134.310411]
大日寺 徳島県 , 徳島県 徳島市一宮町西丁 lat, lon: [34.038105599999994, 134.46258518184646]
常楽寺 徳島県 , 徳島県 徳島市国府町延命 lat, lon: [35.3482067, 139.5407424]
国分寺 徳島県 , 徳島県 徳島市国府町矢野- lat, lon: [35.48001445, 135.78861594346432]
観音寺 徳島県 , 徳島県 徳島市国府町字観音寺 lat, lon: [34.0612512, 134.54505145000002]
井戸寺 徳島県 , 徳島県 徳島市国府町井戸- lat, lon: [34.70657555, 135.21070011427173]
恩山寺 徳島県 , 徳島県 小松島市田野町恩山寺谷 lat, lon: [33.9860981, 134.5778614]
立江寺 徳島県 , 徳島県 小松島市立江町 lat, lon: [33.9653211, 134.6071878]
鶴林寺 徳島県 , 徳島県 勝浦郡勝浦町鶴山 lat, lon: [35.5012402, 139.4629112]
太竜寺 徳島県 , 徳島県 阿南市加茂町龍山 lat, lon: [34.0720771, 134.55370197224073]
平等寺 徳島県 , 徳島県 阿南市新野町秋山 lat, lon: [33.851728949999995, 134.58250779182066]
薬王寺 徳島県 , 徳島県 海部郡日和佐町奥河内寺前- lat, lon: [35.5603633, 139.5342141]
最御崎寺 高知県 , 高知県 室戸市室戸岬町- lat, lon: [33.2490846, 134.1759439]
津照寺 高知県 , 高知県 室戸市室津 lat, lon: [33.565381900000006, 133.53528266042073]
金剛頂寺 高知県 , 高知県 室戸市 lat, lon: [33.2898523, 134.1522806]
神峰寺 高知県 , 高知県 安芸郡安田町唐の浜 lat, lon: [33.429891, 134.008901]
大日寺 高知県 , 高知県 香美郡野市町母代寺 lat, lon: [33.57769055, 133.70523012135828]
国分寺 高知県 , 高知県 南国市国分 lat, lon: [34.0252747, 133.0242384]
善楽寺 高知県 , 高知県 高知市一宮 lat, lon: [33.596092, 133.573539]
竹林寺 高知県 , 高知県 高知市五台山 lat, lon: [33.54279, 133.585875]
禅師峰寺 高知県 , 高知県 南国市十市 lat, lon: [33.532119, 133.624401]
雪蹊寺 高知県 , 高知県 高知市長浜- lat, lon: [33.5437543, 133.54175613260276]
種間寺 高知県 , 高知県 吾川郡春野町秋山 lat, lon: [33.429891, 134.008901]
清滝寺 高知県 , 高知県 土佐市高岡町丁 lat, lon: [33.42593935, 133.4508805076673]
青竜寺 高知県 , 高知県 土佐市宇佐町 竜 lat, lon: [33.42593935, 133.4508805076673]
岩本寺 高知県 , 高知県 高岡郡四万十町茂串- lat, lon: [33.2081737, 133.13466725867693]
金剛福寺 高知県 , 高知県 土佐清水市足摺岬- lat, lon: [32.728457, 133.0100828]
延光寺 高知県 , 高知県 宿毛市平田町中山 lat, lon: [32.9601995, 132.7754017]
観自在寺 愛媛県 , 愛媛県 南宇和郡愛南町御荘平城- lat, lon: [32.9610057, 132.5617799]
龍光寺 愛媛県 , 愛媛県 宇和島市三間町戸雁 lat, lon: [33.295845, 132.601247]
佛木寺 愛媛県 , 愛媛県 宇和島市三 lat, lon: [33.235656, 132.573381]
明石寺 愛媛県 , 愛媛県 西予市宇和町明石 lat, lon: [33.8916797, 132.7397885]
大宝寺 愛媛県 , 愛媛県 上浮穴郡久万高原町菅生二番耕地 lat, lon: [33.84169675, 132.74221817531122]
岩屋寺 愛媛県 , 愛媛県 上浮穴郡久万高原町七鳥 lat, lon: [33.6578348, 132.9862943]
浄瑠璃寺 愛媛県 , 愛媛県 松山市浄瑠璃町 lat, lon: [33.749282, 132.815242]
八坂寺 愛媛県 , 愛媛県 松山市浄瑠璃町 lat, lon: [33.749282, 132.815242]
西林寺 愛媛県 , 愛媛県 松山市高井町 lat, lon: [33.796264, 132.816453]
浄土寺 愛媛県 , 愛媛県 松山市鷹子町 lat, lon: [34.0468397, 132.9927153009765]
繁多寺 愛媛県 , 愛媛県 松山市畑寺町 lat, lon: [33.46302005, 132.42194126001942]
石手寺 愛媛県 , 愛媛県 松山市石手-- lat, lon: [33.8467695, 132.7963926]
太山寺 愛媛県 , 愛媛県 松山市太山寺町 lat, lon: [33.8839201, 132.7203772]
円明寺 愛媛県 , 愛媛県 松山市和気 lat, lon: [33.8911074, 132.739489]
延命寺 愛媛県 , 愛媛県 今治市阿方甲 lat, lon: [34.0668412, 132.9639973]
南光坊 愛媛県 , 愛媛県 今治市別宮町- lat, lon: [34.0682265, 132.9953058]
泰山寺 愛媛県 , 愛媛県 今治市小泉-- lat, lon: [33.8839201, 132.7203772]
栄福寺 愛媛県 , 愛媛県 今治市玉川町八幡 lat, lon: [34.0297786, 132.9782314]
仙遊寺 愛媛県 , 愛媛県 今治市玉川町別所 lat, lon: [34.0132837, 132.9773496]
国分寺 愛媛県 , 愛媛県 今治市国分-- lat, lon: [34.0252747, 133.0242384]
横峰寺 愛媛県 , 愛媛県 西条市小松町石鎚 lat, lon: [33.8376181, 133.1110909]
香園寺 愛媛県 , 愛媛県 西条市小松町南川 lat, lon: [33.893603, 133.1034109]
宝寿寺 愛媛県 , 愛媛県 西条市小松町新屋敷 lat, lon: [33.8973011, 133.1151159]
吉祥寺 愛媛県 , 愛媛県 西条市氷見乙 lat, lon: [33.8957732, 133.1291511]
前神寺 愛媛県 , 愛媛県 西条市州之内甲 lat, lon: [33.8903607, 133.1605615]
三角寺 愛媛県 , 愛媛県 四国中央市金田町三角寺 lat, lon: [33.9673725, 133.5866363]
雲辺寺 徳島県 , 徳島県 三好市池田町白地- lat, lon: [34.0351293, 133.7229222]
大興寺 香川県 , 香川県 三豊市山本町辻 lat, lon: [34.1022869, 133.71914297374104]
神恵院 香川県 , 香川県 観音寺市八幡町-- lat, lon: [34.13398665, 133.64730950356878]
観音寺 香川県 , 香川県 観音寺市八幡町-- lat, lon: [34.124273, 133.6554569]
本山寺 香川県 , 香川県 三豊市豊中町本山甲 lat, lon: [34.139606549999996, 133.6937985133103]
弥谷寺 香川県 , 香川県 三豊市三野町大見乙 lat, lon: [34.230281, 133.7241876]
曼荼羅寺 香川県 , 香川県 善通寺市吉原町- lat, lon: [34.2233323, 133.7503177]
出釈迦寺 香川県 , 香川県 善通寺市吉原町 lat, lon: [34.2191392, 133.7502513]
甲山寺 香川県 , 香川県 善通寺市弘田町- lat, lon: [34.2330662, 133.7657237]
善通寺 香川県 , 香川県 善通寺市善通寺町-- lat, lon: [34.2299924, 133.78922]
金倉寺 香川県 , 香川県 善通寺市金蔵寺町 lat, lon: [34.2495723, 133.7809675]
道隆寺 香川県 , 香川県 仲多度郡多度津町北鴨-- lat, lon: [34.27669405, 133.76289294017013]
郷照寺 香川県 , 香川県 綾歌郡宇多津町 lat, lon: [34.3107957, 133.8252787]
高照院 香川県 , 香川県 坂出市西庄町- lat, lon: [34.3186022, 133.8586386]
国分寺 香川県 , 香川県 高松市国分寺町国分 lat, lon: [34.3030901, 133.9441627]
白峯寺 香川県 , 香川県 坂出市青海町 lat, lon: [34.3344627, 133.9270371]
根来寺 香川県 , 香川県 高松市中山町 lat, lon: [34.3443761, 133.966296]
一宮寺 香川県 , 香川県 高松市一宮町 lat, lon: [34.2863763, 134.0265283971522]
屋島寺 香川県 , 香川県 高松市屋島東町 lat, lon: [34.3574992, 134.10106303395688]
八栗寺 香川県 , 香川県 高松市牟礼町牟礼 lat, lon: [34.3493325, 134.133009]
志度寺 香川県 , 香川県 さぬき市志度 lat, lon: [34.3242502, 134.1796409]
長尾寺 香川県 , 香川県 さぬき市長尾西 lat, lon: [34.2666753, 134.1717088]
大窪寺 香川県 , 香川県 さぬき市多和兼割 lat, lon: [34.1913639, 134.2068728]
番地を削除するときのバグで全角のーが残っていますが、全て緯度経度が出たので、よしとします。
これでやっとデータの準備が整いました。
ここまでの結果を1つのコードにまとめた上で、霊場の名称と番地無し住所、そして、特定した緯度経度データからPointを作成して、GeoDataFrameに格納し、GeoPackage形式ファイルに保管します。
出力は省略します。
次は四国の地図を作って、その上に四国88箇所霊場をプロットしたいと思います。
コメント
コメントを投稿