Bonjour,
Je ne sais pas si je suis dans la bonne section. Dsl si ce n'est pas le cas.

J'avais mis en place un petit script à l'ouverture de Qgis 2.18.22 qui me permettait de lancer automatiquement l'édition d'un atlas cartographique. Ceci à fonctionner pendant pas mal d'année. Maintenant je souhaite passer sur la version 3.16.8 de qgis mais mon script ne marche plus. J'ai cette erreur :

Une erreur est survenue lors de l'exécution du code suivant:
with open('W:/PARTAGE_FDCM/GEOLIS/MAJ_V3/qgis/export_atlas.py','r') as f: exec(f.read())


Traceback (most recent call last):
File "", line 1, in
File "", line 21, in
TypeError: QgsProject.read(): arguments did not match any overloaded call:
overload 1: argument 1 has unexpected type 'QFileInfo'
overload 2: argument 1 has unexpected type 'QFileInfo'
Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import os
from qgis.core import QgsProject
from qgis.gui import QgsMapCanvas, QgsLayerTreeMapCanvasBridge
from qgis.core.contextmanagers import qgisapp
from PyQt5.QtCore import QFileInfo
import time
 
########CONFIGURATION###########
# Filtre
filtreOp = 'id > 300'
repertoireTravail = 'W:/PARTAGE_FDCM/GEOLIS/MAJ_3/qgis'
##############################
 
 
 
project_path =  repertoireTravail + '/generation_atlas2.qgz'
canvas = QgsMapCanvas(None)  # will reparent it to widget via layout
 
# Load our project
bridge = QgsLayerTreeMapCanvasBridge(QgsProject.instance().layerTreeRoot(), canvas)
QgsProject.instance().read(QFileInfo(project_path))
 
# Load the composer
composerView = qgis.utils.iface.activeComposers()[0]
composition = composerView.composition()
atlas = composition.atlasComposition()
composition.setAtlasMode(QgsComposition.ExportAtlas)
atlas.beginRender()
 
date=time.strftime("%Y")+"_"+time.strftime("%m")+"_"+time.strftime("%d")
essai=atlas.coverageLayer().name()
print ("essai")
MyLayer=atlas.coverageLayer()
iter=MyLayer.getFeatures()
 
for feature in iter :
    atlas.prepareForFeature(feature)
    mat=feature['matricule']
    composition.exportAsPDF('W:/PARTAGE_FDCM\GEOLIS\ATLAS_MATRICULE\carte_territoire/'+(mat)+'_'+(date)+'_carte.pdf')
 
 
atlas.endRender()
 
os._exit(0)
Ayant des connaissances limitées en Python je n'arrive pas à corriger mon erreur. Est ce que quelqu'un peut m'aider ?
Je vous remercie par avance.