コマンドラインから「.py」関数を使用しようとすると、GDALで奇妙な動作が見られます。
1.たとえば、を実行するgdalinfo --version
と、標準の応答が返されます。
GDAL 1.11.3, released 2015/09/16
2.また、実行するgdalwarp
と、フラグとすべてを示す標準の応答が表示されます。
3.問題:ただし、たとえばgdal_polygonize.py
、拡張子が.pyのgdal関数を実行すると、次のようになります。
Traceback <most recent call last>:
File "C:\OSGeoW64\bin\gdal_polygonize.py", line 36, in <module>
import gdal, ogr, osr
ImportError: No module named gdal
Path変数を確認し、pythonとgdalを再インストールしましたが、何も機能しませんでした。gdal_polygonize.py
QGISから関数を実行すると機能します。コマンドラインからは使用できません。
GDALには、GDALユーティリティ(gdalinfo
、gdalwarp
など)とGDAL Pythonバインディング(from osgeo import gdal
Pythonスクリプト内から呼び出す場合)の2つの部分があります。2つは別々にインストールできます(または過去にインストールできた可能性があります)。
gdalwarp
コマンドラインで「見る」という事実は、PATH(環境変数)上にユーティリティの場所があることを意味します。一部のユーティリティは自己完結型であり、一部はPythonバインディングを必要とします(特に.pyファイルを呼び出す必要があるユーティリティ)。Pythonバインディングが機能するためには、GDALがPYTHONPATH
環境変数上にある必要があります。
GDALフォルダーを見つけます(gdalwarp
たとえば、が含まれます)。osgeo
Pythonのでフォルダを見つけますLib/site-packages
。これらの場所の両方をPATHとPYTHONPATHに追加します。これfrom osgeo import gdal
で、新しいPythonシェルを使用できるようになります。
それができない場合は、それらの場所にいくつかのファイルがないか(インストールが正しくない)、パスを正しく指定していないか、適切な環境変数を設定していないかのいずれかです。他に魔法はありません。正しくインストールされてリンクされているか、何か間違ったことをしました。
環境変数を設定して機能させるには、環境変数ウィンドウを「適用/ OK」し、新しいコマンドプロンプト/ Pythonシェルを起動する必要があることに注意してください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加