J'ai une question concernant le script suivant dans le Tutoriel 4-1 du livre Esri Guide Avancé de Python : lorsque je l'exécute, il produit une "FileExistsError" ; le script crée en fait un nouveau dossier et un fichier .gdb dupliqué, mais je ne comprends pas pourquoi. Ci-dessous la partie en question avec le message d'erreur qui suit. Merci !
source_fgdb_path = Path(r".\Parking_Violations_and_Neighborhoods.gdb")
arcpy.management.Compact(str(source_fgdb_path))
# Le nom du dossier où placer la file geodatabase
fgdb_folder_name = source_fgdb_path.stem
# L'emplacement du dossier où placer la file geodatabase
fgdb_folder_location = source_fgdb_path.parent
# Le chemin vers le dossier où placer la file geodatabase
fgdb_folder_path = fgdb_folder_location.joinpath(fgdb_folder_name)
# Le chemin de notre file geodatabase copiée
fgdb_path = fgdb_folder_path.joinpath(source_fgdb_path.name)
# Copier la file geodatabase vers le nouvel emplacement
shutil.copytree(source_fgdb_path, fgdb_path)
# Compresser la file geodatabase
zipped_fgdb = shutil.make_archive(
base_name=fgdb_folder_path,
# Le nom de l'archive, sans l'extension de fichier
format="zip", # Le format de l'archive
root_dir=fgdb_folder_path, # Le répertoire à archiver
)
---------------------------------------------------------------------------
FileExistsError Traceback (most recent call last)
Cell In[7], line 2
1 # Copier la file geodatabase vers le nouvel emplacement
----> 2 shutil.copytree(source_fgdb_path, fgdb_path)
3 # Compresser la file geodatabase
4 zipped_fgdb = shutil.make_archive(
5 base_name=fgdb_folder_path,
6 # Le nom de l'archive, sans l'extension de fichier
7 format="zip", # Le format de l'archive
8 root_dir=fgdb_folder_path, # Le répertoire à archiver
9 )
Fichier ~\AppData\Local\Programs\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\Lib\shutil.py:573, dans copytree(src, dst, symlinks, ignore, copy_function, ignore_dangling_symlinks, dirs_exist_ok)
571 avec os.scandir(src) comme itr:
572 entries = list(itr)
--> 573 retourne _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
574 ignore=ignore, copy_function=copy_function,
575 ignore_dangling_symlinks=ignore_dangling_symlinks,
576 dirs_exist_ok=dirs_exist_ok)
Fichier ~\AppData\Local\Programs\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\Lib\shutil.py:471, dans _copytree(entries, src, dst, symlinks, ignore, copy_function, ignore_dangling_symlinks, dirs_exist_ok)
468 sinon :
469 ignored_names = ()
--> 471 os.makedirs(dst, exist_ok=dirs_exist_ok)
472 erreurs = []
473 use_srcentry = copy_function est copy2 ou copy_function est copy
Fichier <frozen os>:225, dans makedirs(name, mode, exist_ok)
FileExistsError: [WinError 183]