簡體   English   中英

Windows 64 上的 Python、GEOS 和 Shapely

[英]Python, GEOS and Shapely on Windows 64

嘗試在我的 Windows 64 位計算機上安裝 Shapely 時,我無法讓 GEOS 庫工作。

到目前為止,我已經運行了 OSGeo4W 安裝程序,我從中安裝了 GDAL(我相信 geos 庫包含在該包中)。 之后,我檢查了我的C:\\OSGeo4W\\bin目錄中是否有 geos_c.dll,但要么我錯過了一些配置步驟,要么庫不起作用。

我需要 Shapely 才能工作,所以我在安裝 GDAL 后還運行了pip install shapely ,它顯然有效(盡管它找不到 GEOS 的 C 庫)。

在我的代碼中,我可以導入 Shapely,但是當我嘗試使用它時,我收到一條錯誤消息,告訴我"geos.dll"

對此的任何幫助將不勝感激。 謝謝!

Anaconda/Miniconda 用戶應該安裝 Shapely(和依賴項):

conda install shapely

截至 2020 年,其他 Python 用戶可以使用 pip 從 PyPI 安裝二進制輪子:

pip install shapely

(您可能需要--upgrade來獲得至少 1.7.0 版,當添加二進制輪時。)請注意,二進制輪不適用於 Windows 上的 Python 2。


另一個從 python.org 安裝 Python 的 Windows 用戶資源,Christoph Gohlke 維護了一個優秀的 Python 非官方 Windows 二進制文件池。 下載適用於 32 位或 64 位 Python 版本的Shapely 輪子,其中包括 GEOS 依賴項。

在此處查看我的答案https://stackoverflow.com/a/50623996/1683626

在 Windows 10 上,python 3.6.5 64 位

  • 安裝osgeo4w
  • 將安裝的文件夾添加到路徑,例如 C:\\OSGeo4W64\\bin(必須包含 geos_c.dll)
  • 重啟命令行

有身材勻稱的可用的版本,在這里,其中包括在安裝GEOS。 查看頁面底部。

我嘗試了@jozef 的方法,但即使將文件夾導入路徑也失敗了。

一個簡單的解決方案:將 geos_c.dll、geos.dll 添加到您的 python 環境的庫文件夾中。 然后它起作用了。

我使用了下面的命令,它確實有效;

pip install Shapely==1.3.0

我已經從https://www.lfd.uci.edu/~gohlke/pythonlibs/#gdal為 GDAL(和 Fiona,在我的情況下;可能不需要)安裝輪子提供了到 geos_c.dll 的路徑沒有用。 既不將它們放入 venv/Lib 中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM