麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

ArcGIS 与 QGIS 3 冲突的解决方案

本机安装了ArcGIS 10.2,同时想学一下开源的 QGIS,就安装了QGIS 3,一切安装正常,但启动的时候报错。

如图:

ArcGIS 和 QGIS 冲突

报错信息

Python错误 : 无法载入插件“MetaSearch”因在调用其classFactory()方法时发生错误 查看消息日志(Python错误)以获取更多的细节信息。
Python错误 : 无法载入插件“processing” 查看消息日志(Python错误)以获取更多的细节信息。

细节

Traceback (most recent call last):
          File "C:/PROGRA~1/QGIS3~1.4/apps/qgis/./python\qgis\utils.py", line 335, in startPlugin
          plugins[packageName] = package.classFactory(iface)
          File "C:/PROGRA~1/QGIS3~1.4/apps/qgis/./python/plugins\MetaSearch\__init__.py", line 29, in classFactory
          from MetaSearch.plugin import MetaSearchPlugin
          File "C:/PROGRA~1/QGIS3~1.4/apps/qgis/./python\qgis\utils.py", line 672, in _import
          mod = _builtin_import(name, globals, locals, fromlist, level)
          File "C:/PROGRA~1/QGIS3~1.4/apps/qgis/./python/plugins\MetaSearch\plugin.py", line 34, in 
          from MetaSearch.dialogs.maindialog import MetaSearchDialog
          File "C:/PROGRA~1/QGIS3~1.4/apps/qgis/./python\qgis\utils.py", line 672, in _import
          mod = _builtin_import(name, globals, locals, fromlist, level)
          File "C:/PROGRA~1/QGIS3~1.4/apps/qgis/./python/plugins\MetaSearch\dialogs\maindialog.py", line 50, in 
          from owslib.csw import CatalogueServiceWeb # spellok
          File "C:/PROGRA~1/QGIS3~1.4/apps/qgis/./python\qgis\utils.py", line 672, in _import
          mod = _builtin_import(name, globals, locals, fromlist, level)
          File "C:\PROGRA~1\QGIS3~1.4\apps\Python37\lib\site-packages\owslib\csw.py", line 27, in 
          from owslib.util import OrderedDict
          File "C:/PROGRA~1/QGIS3~1.4/apps/qgis/./python\qgis\utils.py", line 672, in _import
          mod = _builtin_import(name, globals, locals, fromlist, level)
          File "C:\PROGRA~1\QGIS3~1.4\apps\Python37\lib\site-packages\owslib\util.py", line 14, in 
          from dateutil import parser
          File "C:/PROGRA~1/QGIS3~1.4/apps/qgis/./python\qgis\utils.py", line 672, in _import
          mod = _builtin_import(name, globals, locals, fromlist, level)
          File "C:\Python27\ArcGIS10.2\Lib\site-packages\dateutil\parser.py", line 158
          l.append("%s=%s" % (attr, `value`))
          ^
         SyntaxError: invalid syntax

问题分析

解决这个问题还耗费了一点时间,主要是提示的是无法加载 MetaSearch 和 processing 插件,导致我花费了大量的时间来找为什么这2个插件无法加载,去搜索Python错误,但把 stackoverflow 翻了好多也没找到解决方案。后来用女朋友的机器安装了一下QGIS完美运行。仔细思考了一下,既然是Python的原因报错,在其他电脑上又是正常的,那么很有可能是我本机的 ArcGIS 引起的,因为 ArcGIS 10.2 默认的是 Python 2,但 QGIS 3.x 的版本使用的是 Python 3,一看还真是。

在QGIS的设置选项里找到了如下的环境变量

QGIS环境变量

解决方案

解决方案也很比较简单,只要在使用 QGIS 的时候把 PYTHONPATH 重新命名一下,比如 PYTHONPATH_BAK,这样QGIS就可以正常使用了。

相关阅读

麻辣GIS-Sailor

作者:

GIS爱好者,学GIS,更爱玩GIS。

声明

1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。

2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。

手机阅读
公众号关注
知识星球
手机阅读
麻辣GIS微信公众号关注
最新GIS干货
关注麻辣GIS知识星球
私享圈子

已有 6 条评论

  1. 麻辣GIS-淡然如水
    1#
    淡然如水  · 2021-01-25 17:16

    你好老师,我出现了你上述的问题,但是没看懂您的解决办法,能说具体些吗

      1. 麻辣GIS-Sailor
        Sailor  · 2021-01-26 14:42

        就是改环境变量啊。

          1. 麻辣GIS-kaidashu
            kaidashu  · 2023-04-16 11:07

            请问怎么改呢

              1. 麻辣GIS-Sailor
                Sailor  · 2023-04-20 13:53

                修改环境变量,参考这个:https://malagis.com/window-environment-variables-manage-tools.html

  2. 麻辣GIS-ROC_WW
    2#
    ROC_WW  · 2022-02-21 11:32

    提供一种新思路,既然确认了是python版本冲突,如果不常用arcgis的python,可以卸载python组件,保证主体功能。

      1. 麻辣GIS-Sailor
        Sailor  · 2022-02-26 21:32

        这咋可能嘛,ArcGIS好多分析功能全是依赖Python的

留言板(小编看到第一时间回复)