Ejemplo n.º 1
0
def qgisMainInfo():
    """Returns general QGIS information like version, code revision,
    lib and app paths, etc.
    """

    if iface is None:
        try:
            app = QgsApplication(sys.argv, False)
            app.initQgis()
            appState = app.showSettings().replace("\t\t", " ").split("\n")[1:]
            prefixPath = app.prefixPath()
            libraryPath = app.libraryPath()
            libExecPath = app.libexecPath()
            pkgDataPath = app.pkgDataPath()
        except:
            appState = ["Could not read QGIS settings"]
            prefixPath = "Not available"
            libraryPath = "Not available"
            libExecPath = "Not available"
            pkgDataPath = "Not available"
    else:
        appState = QgsApplication.showSettings().replace("\t\t",
                                                         " ").split("\n")[1:]
        prefixPath = QgsApplication.prefixPath()
        libraryPath = QgsApplication.libraryPath()
        libExecPath = QgsApplication.libexecPath()
        pkgDataPath = QgsApplication.pkgDataPath()

    return {
        "QGIS information": {
            "QGIS version":
            "{} ({})".format(Qgis.QGIS_VERSION, Qgis.QGIS_DEV_VERSION),
            "QGIS prefix path":
            prefixPath,
            "QGIS library path":
            libraryPath,
            "QGIS lib exec path":
            libExecPath,
            "QGIS pkg data path":
            pkgDataPath,
            "QGIS application state":
            appState
        }
    }