OSGEO - Heroku 上的 OGR

问题描述 投票:0回答:1

我尝试在 Heroku 上安装 GDAL 库(以使用 OGR 模块 >> FlattenTo2D() 方法)。我找到了 2 个来源如何做到这一点:

  1. 在 github 上使用构建堆栈 (https://github.com/heroku/heroku-geo-buildpack.git)
  2. 使用 Apt 文件

我不清楚哪个程序仍然有效,所以我使用了两个程序。将代码部署到 Heroku 后,GDAL 库似乎已安装:

-----> Building on the Heroku-20 stack
-----> Using buildpacks:
       1. https://github.com/heroku/heroku-geo-buildpack.git
       2. heroku-community/apt
       3. heroku/python
-----> Geo Packages (GDAL/GEOS/PROJ) app detected
-----> Installing GDAL-3.5.0
-----> Installing GEOS-3.10.2
-----> Installing PROJ-8.2.1
-----> Apt app detected

但是,当我尝试运行 python 脚本(使用:from osgeo import gdal)时,我收到错误“ModuleNotFoundError:没有名为“osgeo”的模块”。当我检查 Heroku 上的 site-packges 文件夹(/app/.heroku/python/lib/python3.11/site-packages)时,那里没有找到 gdal 文件。它们安装在文件夹中:heroku-geo-buildpack/vendor/bin。

知道找不到 GDAL 可能是什么问题吗?特别是如何安装我正在寻找的 OGR 模块?谢谢你的帮助。

python heroku gdal modulenotfounderror ogr
1个回答
0
投票

您通过 Geo buildpack 和 Apt 获得的 GDAL 包包含 基础库,它似乎是用 C 和 C++ 的某种组合来实现的

Python和其他语言的包装器]需要单独安装。在这种情况下,请确保您已在 gdal

Pipfile
requirements.txt
 文件中声明了对 
setup.py
 的依赖(执行您已经对其他依赖项执行的任何操作)、提交并重新部署。


旁注:我不建议同时使用 Geo buildpack 和 apt GDAL 包。他们可能会互相干扰。选择一个。

© www.soinside.com 2019 - 2024. All rights reserved.