Python の overpass パッケージは, OpenStreetMap の Overpass API を Python から使えるようにする機能を持ったソフトウエア.
先人に感謝
キーワード: OpenStreetMap, Overpass API, Python, overpass, geopandas, GeoJSON, 地図データダウンロード, ポイント, ライン, エリア, タグ
システム Python を使うことができる(その場合,Python のインストールは行わない)
システム Python を用いるときは,pip, setuptools の更新は次のコマンドで行う.
sudo apt -y update sudo apt -y install python3-pip python3-setuptools
Ubuntu で,システム Python 以外の Python をインストールしたい場合は pyenv が便利である: 別ページで説明している.
Python の URL: http://www.python.org/
【Python, pip の使い方】
Python, pip は,次のコマンドで起動できる.
【Python 開発環境のインストール】
JupyterLab, spyder, nteract (Python 開発環境) のインストールは, Windows でコマンドプロンプトを管理者として実行し, 次のコマンドを実行.
python -m pip install -U pip setuptools jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter spyder
詳しくは,: 別ページで説明している.
JupyterLab, spyder, nteract (Python 開発環境) のインストール: : 別ページで説明している.
Windows での マイクロソフト C++ ビルドツール (Build Tools) のインストール手順: 別ページで説明している.
あとで GeoJSON オブジェクトを扱いたいので,geopanda もインストールする.
起動は,Windows のメニューで「Visual Studio 20..」の下の「x64 Native Tools コマンドプロンプト (x64 Native Tools Command Prompt)」を選ぶ.「x64」は,64ビット版の意味である.
Visual Studio Community のインストールを行うことで, 「x64 Native Tools コマンドプロンプト (x64 Native Tools Command Prompt)」もインストールされる.その手順は,別ページで説明している.
python -m pip install -U pip pip install --ignore-installed --upgrade overpass pip install --ignore-installed --upgrade geopandas
※ 「pip install --ignore-installed --upgrade geopandas」ではなくて, GitHub からソースコードをダウンロードしてインストールしたい場合
起動は,Windows のメニューで「Visual Studio 20..」の下の「x64 Native Tools コマンドプロンプト (x64 Native Tools Command Prompt)」を選ぶ.「x64」は,64ビット版の意味である.
Visual Studio Community のインストールを行うことで, 「x64 Native Tools コマンドプロンプト (x64 Native Tools Command Prompt)」もインストールされる.その手順は,別ページで説明している.
python -m pip install -U pip pip install git+https://github.com/geopandas/geopandas
エラーメッセージが出ていないことを確認
バージョン番号が表示されれば OK
pip show geopandas
あとでデータをダウンロードするときのために,Google Map を使って緯度・経度を調べてみる
jupyter qtconsole
Python プログラムを動かす
開発環境や Python コンソール(Jupyter Qt Console,Spyder,PyCharm,PyScripter など)の利用も便利である.
※ 「jupyter qtconsole」を入れたのに,jupyter qtconsole が起動しない という場合には,次の操作で,インストールを行ってから,もう一度試してみる.
python -m pip install -U jupyterlab jupyter jupyter-console jupytext spyder
次の Python プログラムを実行
※さきほど調べた緯度と経度
(実行例)
import overpass lat = 34.4461 lon = 133.2315 api = overpass.API() map_query = overpass.MapQuery(lat - 0.001, lon - 0.001, lat + 0.001, lon + 0.001) response = api.Get(map_query)
GeoJSON 形式のデータになっていることを確認
print(response)
OpenStreetMapの「ライン」のデータのうち,「highway」であるようなデータが欲しいとする. OpenStreetMap には,ポイントやラインやエリアには,「highway」のようなタグ付いている.
次の Python プログラムを実行
書きかけ
次の Python プログラムを実行
書きかけ
次の Python プログラムを実行
書きかけ
まとめ