GDAL,ogr2ogr“找不到proj.db”错误

时间:2019-06-26 01:41:29

标签: geojson gdal shapefile ogr2ogr

我尝试从自然地球的世界shp文件中提取某些国家/地区。

我当前正在使用Windows 10,因此我安装了python 3.7,gdal以使用ogr2​​ogr。

我在命令中键入以下代码以提取韩国

  

ogr2ogr -f GeoJSON-其中“ geonunit ='South Korea'” korea-geo.json   ne_10m_admin_1_states_provinces.shp

但是出现以下错误。

  

错误1:PROJ:proj_create_from_wkt:找不到proj.db

     

错误1:PROJ:proj_identify:找不到proj.db

我已经为Gdal设置了环境变量。

  

C:\ Program Files \ GDAL \ gdal-data

     

C:\ Program Files \ GDAL \ gdalplugins

请指导我解决此问题。

4 个答案:

答案 0 :(得分:5)

将PROJ_DEBUG = 3添加到您的environment_variable非常有用。然后,错误消息将告诉您PROJ在哪里期待文件。

答案 1 :(得分:3)

检查您的环境变量:

setx GDAL_DATA "C:\Program Files\GDAL\gdal-data"

setx GDAL_DRIVER_PATH "C:\Program Files\GDAL\gdalplugins"

setx PROJ_LIB "C:\Program Files\GDAL\projlib"

setx PYTHONPATH "C:\Program Files\GDAL\"

答案 2 :(得分:1)

在导入GDAL之前先将这些命令添加到您的代码中您的问题将得到解决

import os
os.environ['PROJ_LIB'] = 'C:\\Users\\Sai kiran\\anaconda3\\envs\\sai\\Library\\share\\proj'
os.environ['GDAL_DATA'] = 'C:\\Users\\Sai kiran\\anaconda3\\envs\sai\\Library\\share'

import gdal

在anaconda目录中搜索proj.db文件的位置,并在上述命令中用C:\\Users\\Sai kiran\\anaconda3\\envs\\sai\\Library\\share\\proj替换相同的位置。另外,如上例所示,替换anaconda目录中gdal文件夹的位置。

答案 3 :(得分:0)

您可能需要设置PROJ_LIB环境变量。但是我不确定这些数据在您系统上的什么位置。安装GDAL的方式也可能会影响它。

如果进入C:\Program Files\GDAL目录,您是否有一个名为proj的文件夹?如果是这样,请查看其中是否包含proj.db文件。如果是这样,那就是您的PROJ_LIB路径值。您可能还会在某种share文件夹中找到它。

如果找不到它嵌套在GDAL目录中的某个位置,请尝试在系统中搜索proj.db文件,如果找到它,则将该目录设置为( NOT 完整的文件路径)作为您的PROJ_LIB值,重新启动并查看一切是否正常。