Technical Note: Python Script to Inspect GeoPackage Contents
I created a Python script to inspect the contents of GeoPackage files (.gpkg) used in QGIS. When dealing with multiple GeoPackage files, this allows you to check the tables stored within them via the command line, without having to open each file individually in QGIS.
QGISで使うGeoPackageファイル(.gpkg)の中身を覗くPythonスクリプトを作成しました。GeoPackageファイルが多数ある場合、それらを一つ一つQGISで開かなくても、コマンドラインでGeoPackageファイルに格納されているテーブルを確認できます。
1 GeoPackageファイルに格納されている全てのテーブルを確認するPythonスクリプト
GeoPackageファイルに格納されている全てのテーブルの確認をコマンドラインで確認できるPythonスクリプトを作成しました。QGISで作成したテーブルだけでなく、SQLiteの管理用テーブルも含まれます。
GeoPackageファイルに格納されている全てのテーブルを確認している様子
2 GeoPackageファイルに格納されているQGIS関連テーブルを確認するPythonスクリプト
GeoPackageファイルに格納されているQGIS関連テーブルだけの確認をコマンドラインで確認できるPythonスクリプトを作成しました。SQLiteの管理用テーブルは含まれません。
GeoPackageファイルに格納されているQGIS関連テーブルを確認している様子
3 QGISPythonコンソールでGeoPackageファイルに格納されているQGIS関連テーブルと詳細情報を表示するPythonスクリプト
QGISPythonコンソールでGeoPackageファイルに格納されているQGIS関連テーブルと詳細情報を表示するPythonスクリプトを作成しました。詳細情報はレイヤ名・ジオメトリ型・CRS・フィールド名・型・地物数を一覧表として表示します。
QGISPythonコンソールでGeoPackageファイルの詳細情報を表示している様子
ただし、一覧表示でなければ、このPythonスクリプトで表示される情報はすべて通常のQGIS操作で確認できる情報です。
4 3のPythonスクリプトをコマンドラインで走らせるPythonスクリプト
3のPythonスクリプトをコマンドラインで走らせるPythonスクリプトを作成しました。
3のPythonスクリプトをコマンドラインで走らせるPythonスクリプトの様子
但し、現状では作業中のため、当該Pythonスクリプトと対象GeoPackageファイル(.gpkg)の双方のフルパス入力が必要なので、使い勝手が悪いです。
5 感想
GeoPackageファイルの内容はQGISにインストールすれば、通常操作で全て判ります。しかし、類似作業が増え、多数フォルダーに類似GeoPackageファイルが存在するようになった場合、それらを一つ一つQGISで確認することは非効率的です。多数GeoPackageファイルの確認に特に2のPythonスクリプトの存在意義が高まります。




0 件のコメント:
コメントを投稿