pyQgis开发环境配置

1、配置环境变量。反正将很多路径都加入。这样才能识别

qgis.core等核心模块

2、在pycharm中配置python解释器。配置Qgis安装自带的解释器(图示3.9)

3、使用processing模块。按照如下方式引入,测试可用。

import sys
sys.path.append(r'C:\\Program Files\\QGIS 3.34.1\\apps\\qgis\\python\\plugins')
from processing.core.Processing import Processing
Processing.initialize()
import processing

但pycharm还是会红色提示找不到processing.core.Processing 模块,但可以不管,测试确实可运行。

完整代码如下:参考了【QGIS】在Pycharm中使用pyqgis中的processing工具箱功能_qgis from processing.core.processing import proces-优快云博客

from qgis.core import *
import sys
sys.path.append(r'C:\\Program Files\\QGIS 3.34.1\\apps\\qgis\\python\\plugins')
from processing.core.Processing import Processing
Processing.initialize()
import processing

# 加载道路
path_to_roads = r'./data/input/shp/地块.shp'
out_path_to_roads = r'./data/output/buffer.shp'
roads = QgsVectorLayer(path_to_roads, "roads", "ogr")

# 配置道路缓冲区参数
parameter_dictionary_road = {
    'INPUT': roads,
    'DISTANCE': 50,
    'SEGMENTS': 5,
    'DISSOLVE': True,
    'OUTPUT': out_path_to_roads,
    'END_CAP_STYLE': 0,
    'JOIN_STYLE': 0,
    'MITER_LIMIT': 10
}

roads_buffer = processing.run("native:buffer", parameter_dictionary_road)
print('缓冲区创建成功')

网上资料针对QGIS二次开发时环境搭建的坑(解决no module named qgis、no module named processing)_modulenotfounderror: no module named 'qgis-优快云博客

from qgis.core import *
from qgis.core import QgsProcessing
from qgis.core import QgsProcessingAlgorithm
from qgis.core import QgsProcessingMultiStepFeedback
from qgis.core import QgsProcessingParameterRasterDestination
import sys
# Supply path to qgis install location
QgsApplication.setPrefixPath("D:\qgis", True)
# import processing
#
# # Create a reference to the QgsApplication.  Setting the
# # second argument to False disables the GUI.
qgs = QgsApplication([], False)
#
# # Load providers
qgs.initQgis()
# Write your code here to load some layers, use processing
# algorithms, etc.
sys.path.append(r"D:\qgis\apps\qgis-ltr\python\plugins")
import processing
qgs.exitQgis()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值