Проблемы с импортом Фионы в Python
Я установил fiona, используя whl-дистрибутивы... но при импорте получаю следующую ошибку:
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-1-b0161244e1be> in <module>()
----> 1 import fiona
2 with fiona.open(r'C:\Users\harish.padi\Downloads\BSP\BSP\BSP_default_pred.shp', 'r') as input:
3 with open(r'C:\Users\harish.padi\Downloads\BSP\BSP\output.txt', 'w') as output:
4 for pt in input:
5 id = pt['properties']['id']
c:\program files\python36\lib\site-packages\fiona\__init__.py in <module>()
75 pass
76
---> 77 from fiona.collection import Collection, BytesCollection, vsi_path
78 from fiona._drivers import driver_count, GDALEnv
79 from fiona.drvsupport import supported_drivers
c:\program files\python36\lib\site-packages\fiona\collection.py in <module>()
7
8 from fiona import compat
----> 9 from fiona.ogrext import Iterator, ItemsIterator, KeysIterator
10 from fiona.ogrext import Session, WritingSession
11 from fiona.ogrext import (
ImportError: DLL load failed: The specified module could not be found.
Кто-нибудь может предложить решение.?
2 ответа
Возможно, лучше упомянуть, что GDAL 2.2.4 предназначен для Python 2.7 (как в приведенной ссылке).
У меня была та же проблема ImportError с Python 3.7, Fiona 1.8.6 и GDAL 3.0.0
Заменив GDAL 3.0.0 на 2.2.4, он заработал, не обращая внимания на другие детали.
У меня также были некоторые проблемы, когда я установил fiona и попытался импортировать его. У меня было такое сообщение
>>> import fiona
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "D:\Software\Ingenieria\Anaconda2\lib\site-packages\fiona\__init__.py", l
ine 77, in <module>
from fiona.collection import Collection, BytesCollection, vsi_path
File "D:\Software\Ingenieria\Anaconda2\lib\site-packages\fiona\collection.py",
line 9, in <module>
from fiona.ogrext import Iterator, ItemsIterator, KeysIterator
ImportError: DLL load failed: The specified module could not be found.
Как это сработало для меня в конце?
- Я установил дистрибутивы GDAL 2.2.4 и Fiona по этой ссылке
- Затем я проверил, есть ли на моем компьютере компилятор C++ для python ( здесь ссылка с некоторой информацией о том, какой из них вам может потребоваться установить). В некоторых вопросах форума я читал, что GDAL нужен этот компилятор для работы.
- Затем я добавил путь к папке Osgeo (есть dll для fiona) в переменную среды path, некоторые картинки с моего компьютера. Экран печати 1 Экран печати 2
После этих шагов у меня больше не было проблем с Фионой. Сначала я использовал GDAL версии 1.1.4, но он никогда не работал с этим. Вы можете попробовать сначала с первой версией, и если она не работает, установите версию 2.2.4.
Вам не хватает DLL для OGR, GDAL или для обоих. В вашем сообщении мало информации, например, об операционной системе и т. Д., Поэтому я могу лишь направить вас к инструкциям по установке:
http://toblerity.org/fiona/README.html
Кроме того, я заметил, что вы, кажется, используете Python 3.6. Цитировать инструкцию:
"Fiona требует Python 2.6, 2.7, 3.3 или 3.4 и GDAL/OGR 1.8+".
Это также может быть потенциальной проблемой.