Google Mapを使えばできるのですが、大量の地点をまとめて調べる必要があったので利用できるAPIを調べました。
ググった結果、こちらのサイトにたどり着きました。
Directions APIを利用すれば目的はほぼ達成のようです。
さらにDirections APIのドキュメントを探していると、クライアントライブラリも提供されているようです。
Java/Python/Go/Node.js用のライブラリが提供されていますが、今回はPythonを選択しました。
作成したコードのサンプルはこちらになります。今回は車での移動時間を知りたいのでmode="driving"
を指定しています。
gistdd3162012734421eec71b4841f62783a
何回もAPIを呼び出さなくてよいようにJSONをそのまま保存する方針をとったのですが、ensure_ascii=False
を指定しないと日本語がエスケープされて保存されてしまうので注意が必要です。