求助:如何解决Windows下导入qgis._core的DLL加载失败问题
解决QGIS 3.28.2导入qgis.core时DLL加载失败的问题
核心原因
QGIS自带完整的Python运行环境,包含所有依赖的DLL和专属库。你的Anaconda独立Python环境(即使版本匹配3.9)因缺少QGIS专属依赖路径或核心DLL,导致加载qgis._core时失败。
正确环境配置步骤
1. 确认QGIS的Python路径
QGIS 3.28的默认Python路径如下:
- Python根目录:
C:\Program Files\QGIS 3.28\apps\Python39 - site-packages目录:
C:\Program Files\QGIS 3.28\apps\Python39\Lib\site-packages
2. 调整系统环境变量(优先QGIS路径)
修改环境变量时,将QGIS相关路径移到最顶部,确保系统优先加载QGIS的资源:
- PATH 添加/上移以下路径:
C:\Program Files\QGIS 3.28\binC:\Program Files\QGIS 3.28\apps\Python39C:\Program Files\QGIS 3.28\apps\Python39\ScriptsC:\Program Files\QGIS 3.28\apps\qt5\bin
- PYTHONPATH 添加以下路径:
C:\Program Files\QGIS 3.28\apps\qgis\pythonC:\Program Files\QGIS 3.28\apps\qgis\python\qgisC:\Program Files\QGIS 3.28\apps\Python39\Lib\site-packages
3. IDE指定QGIS专属Python解释器
不管用PyCharm、VSCode还是其他IDE,直接选择QGIS自带的Python解释器,放弃Anaconda环境:
- 解释器路径:
C:\Program Files\QGIS 3.28\apps\Python39\python.exe - 配置时直接选中该exe,不要关联Anaconda的虚拟环境。
4. 验证配置的测试脚本
创建test_qgis.py,运行前确认IDE已切换到QGIS的Python:
import sys # 环境变量未生效时可手动追加路径 sys.path.append('C:/Program Files/QGIS 3.28/apps/qgis/python') sys.path.append('C:/Program Files/QGIS 3.28/apps/Python39/Lib/site-packages') from qgis.core import QgsApplication # 初始化QGIS应用 QgsApplication.setPrefixPath('C:/Program Files/QGIS 3.28', True) qgs = QgsApplication([], False) qgs.initQgis() print("QGIS core导入成功") # 清理资源 qgs.exitQgis()
5. 规避Anaconda干扰的额外操作
- 修改环境变量后,重启电脑再打开IDE,确保新配置生效。
- 不要尝试在Anaconda环境中用
pip install qgis安装QGIS包,官方不支持该方式,必须依赖QGIS自带环境。
常见错误排查
- 检查PATH中QGIS的bin路径是否在最顶部,防止系统优先加载Anaconda的DLL。
- 确保QGIS安装路径无空格或中文(官方虽支持,但默认路径更稳妥)。
- 确认QGIS自带Python版本为3.9.x(QGIS 3.28自带版本刚好匹配你的3.9.13,版本无冲突)。
内容的提问来源于stack exchange,提问作者SAMUDRA NAYAK
相关产品推荐
相关产品推荐

