ImportError: No module named gdal

ImportError: No module named gdal

当我尝试从命令行使用“.py”函数时,我的 GDAL 出现奇怪的行为:

1.比如我在运行gdalinfo --version时得到的标准响应是:

GDAL 1.11.3, released 2015/09/16

2. 此外,当我 运行 gdalwarp 时,我得到标准响应,显示了标志和所有内容。

3。问题: 但是,当我 运行 gdal 函数具有 .py 扩展名时,例如 gdal_polygonize.py,我得到以下信息:

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,但没有任何效果。 当我 运行 我的 QGIS 中的 gdal_polygonize.py 函数时,它起作用了。我只是不能从命令行使用它。

GDAL 有两个部分:GDAL 实用程序(gdalinfogdalwarp 等)和 GDAL Python 绑定(当您调用 from osgeo import gdal在 Python 脚本中。)。两者可以(或过去可以)分开安装。

您在命令行上 "see" gdalwarp 的事实意味着您在 PATH(环境变量)上拥有实用程序的位置。有些实用程序是 self-contained,有些需要 Python 绑定(特别是那些需要调用 .py 文件的实用程序)。为了使 Python 绑定起作用,GDAL 必须位于 PYTHONPATH 环境变量上。

找到 GDAL 文件夹(例如 gdalwarp)。在 Python 的 Lib/site-packages 中找到 osgeo 文件夹。将这两个位置添加到 PATH 和 PYTHONPATH。您现在应该可以 from osgeo import gdal 重新 Python shell。

如果你不能,要么你在这些位置丢失了一些文件(安装错误),要么你没有正确指定路径/​​设置正确的环境变量。没有其他魔法,它要么安装和链接正确,要么你做错了什么。

请注意,要设置和运行环境变量,您需要 "Apply/OK" 环境变量 window(s),并启动一个新的命令提示符 / Python shell.

确保安装 gdal 的 conda 版本。在我从 conda 安装 gdal 之前,我从来没有真正让 gdal 正常工作。确保你有 anaconda python 发行版。 https://www.continuum.io/downloads