PyCharm 中 rasterio 和 gdal DLL 加载失败

ars*_*l88 8 python gdal pycharm conda rasterio

我有一个安装了 rasterio 的 conda 环境和一整套其他库,包括 gdal。

当我做:

import rasterio
Run Code Online (Sandbox Code Playgroud)

在 jupyter 笔记本上,它加载得很好,我可以利用它的方法等。

当我在 PyCharm 上使用相同的环境和解释器执行完全相同的操作时,我会出现以下错误:

from rasterio._base import gdal_version
ImportError: DLL load failed: The specified module could not be found.
Run Code Online (Sandbox Code Playgroud)

我很难理解为什么会出现这种情况,因为它在 jupter 笔记本中加载得很好。

che*_*fan 3

我遇到了和你一样的问题,已经解决了。

\n\n

首先,您需要确保gdal版本仍然是2.x。如果没有,只需将其删除即可。

\n\n
conda remove rasterio gdal -y\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后重新安装 gdal 并指定安装版本:

\n\n
conda install rasterio gdal=2 -y\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后,您需要将GDAL_DATA其中包含的gcs.csv文件添加到 Windows 中的环境\xef\xbc\x8c\n中:

\n\n
setx /m GDAL_DATA C:\\Users\\Admin\\AppData\\Local\\ESRI\\conda\\envs\\python3\\Library\\share\\gdal\n
Run Code Online (Sandbox Code Playgroud)\n\n

重新启动计算机,并在导入 rasterio 之前导入 gdal:

\n\n
In [1]: import rasterio\n---------------------------------------------------------------------------\nImportError                               Traceback (most recent call last)\n<ipython-input-1-350e27267e59> in <module>\n----> 1 import rasterio\n\n~\\AppData\\Local\\ESRI\\conda\\envs\\python3\\lib\\site-packages\\rasterio\\__init__.py in <module>\n     20             pass\n     21\n---> 22 from rasterio._base import gdal_version\n     23 from rasterio.drivers import is_blacklisted\n     24 from rasterio.dtypes import (\n\nImportError: DLL load failed: \xe6\x89\xbe\xe4\xb8\x8d\xe5\x88\xb0\xe6\x8c\x87\xe5\xae\x9a\xe7\x9a\x84\xe6\xa8\xa1\xe5\x9d\x97\xe3\x80\x82\n\nIn [2]: from osgeo import gdal\n\nIn [3]: import rasterio\n
Run Code Online (Sandbox Code Playgroud)\n