我已经使用网络安装程序(64位)安装了QGIS 3.4,并尝试将qgis与pycharm结合使用,如下所述: http://spatialgalaxy.net/2018/02/13/quick-guide-to-getting-started-with-pyqgis3-on-windows/
但是,我无法使处理程序包在pycharm中正常工作。例如,当我使用一个简单的代码,例如:
from qgis.core import *
import processing
processing.run("qgis:createpointslayerfromtable",
{'INPUT':r'C:\Users\input.xlsx',
'XFIELD':'GEO_X',
'YFIELD':'GEO_Y',
'ZFIELD':None,
'MFIELD':None,
'TARGET_CRS':QgsCoordinateReferenceSystem('EPSG:4326'),
'OUTPUT':r'C:\Users\output.geojson'})
我收到错误:找不到算法qgis:createpointslayerfromtable
直接在QGIS的python窗口中执行时,相同的代码也起作用,因此我的pycharm设置一定存在问题。
我使用的是pyqgis.cmd:
@echo off
SET OSGEO4W_ROOT=C:\OSGeo4W64
call "%OSGEO4W_ROOT%"\bin\o4w_env.bat
call "%OSGEO4W_ROOT%"\apps\grass\grass-6.4.3\etc\env.bat
@echo off
path %PATH%;%OSGEO4W_ROOT%\apps\qgis\bin
path %PATH%;%OSGEO4W_ROOT%\apps\grass\grass-6.4.3\lib
path %PATH%;C:\OSGeo4W64\apps\Qt5\bin
path %PATH%;C:\OSGeo4W64\apps\Python37\Scripts
set PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\qgis\python
set PYTHONHOME=%OSGEO4W_ROOT%\apps\Python37
start "PyCharm aware of Quantum GIS" /B "C:\Program Files\JetBrains\PyCharm Community Edition 2018.1.4\bin\pycharm.exe" %*
cmd.exe
我尝试了不同的变体,例如添加 呼叫“%OSGEO4W_ROOT%” \ etc \ ini \ python-core.bat
,但似乎没有任何效果。请帮忙。
答案 0 :(得分:0)
我对此也有疑问。太多事情可能会出错,我当前的工作流程是在IDE中进行编码,然后在qgis中导入脚本以完成操作。
独立处理器应该可用(请参阅https://github.com/qgis/QGIS/pull/34617)
为此,您可以使用system / os.call从pycharm调用它,并以这种方式使用处理工具。我还没有尝试过,但是它应该比使用路径和环境变量更简单。