2015年6月30日火曜日

GeoGigでGISデータのバージョン管理をする (3)pythonでリポジトリの中を見る

第1回第2回で、GeoGigを使ってデータの登録・更新を試しました。

GeoGigには、geogig-pyというPythonのインターフェースも用意されており、Pythonを使ってリポジトリの操作ができます。今回はこれを使って、前回までに作ったリポジトリの中を見てみます。

事前準備

geogig-pyを使う前に、GeoGigに付属のgeogig-gatewayというプログラムを実行し、GeoGigサーバーを起動しておく必要があります。


リポジトリの取得

Repositoryクラスのインスタンスを作成します。リポジトリ操作は、すべてこのインスタンスを通じて実行します。
from geogigpy.repo import Repository
repo = Repository('C:\\work\\geogig')

ノードの取得

repo.treesで、リポジトリの最上位のノードのリストが拾えます。最初のノードを取得するには、repo.trees[0]を指定します。
node = repo.trees[0]

フィーチャーの取得

node.featuresで、ノード内のフィーチャーのリストが取得できます。
feature = node.features[0]
geom = feature.geom
attrs = feature.attributes

ログの取得

repo.log()で、データセットあるいはフィーチャーのログが取れます。
logs = repo.log(path = 'parks')
logs = repo.log(path = 'parks/1')

ログから更新日時やコミットメッセージなどを取り出すには、次のようにします。
logs[0].committerdate  #更新日時
logs[0].committername  # 更新者
logs[0].message  #コミットメッセージ

今回はここまで。

0 件のコメント:

コメントを投稿