J'essaie de charger un projet .qgs existant et d'obtenir une liste des couches à l'intérieur. Il me semble que je peux ouvrir le projet, mais je ne parviens pas à obtenir la liste des couches. Je suis un peu confus quant à la syntaxe de base de PyQGIS, et le livre de recettes ne couvre pas cet exemple spécifique.
from qgis.core import *
from PyQt4.QtCore import QFileInfo
QgsApplication.setPrefixPath(r"C:\OSGeo4W\apps\qgis-ltr", True)
qgs = QgsApplication([], False)
qgs.initQgis()
# Get the project instance
project = QgsProject.instance()
# Open the project
project.read(QFileInfo(
r'C:\path\to\project\project.qgs'))
print project.fileName()
# Get the layers in the project
layers = QgsMapLayerRegistry.instance().mapLayers()
print layers
qgs.exitQgis()
Actuellement, cela layersrenvoie simplement un dict vide, malgré le fait que le projet existe et comporte de nombreuses couches.
QgsApplication.processEvents()juste après project.read?

QGIS 2.18.2étapes éprouvées de OP et @ GermánCarrillo. Quelle est la version d'OP?