From 14c0ae4f5b25aeef3a37da8e8c97e260d3c0458c Mon Sep 17 00:00:00 2001 From: Colas Geier Date: Tue, 28 Apr 2026 14:16:42 +0200 Subject: [PATCH] code evolution --- 0_FONCIER/TdB_FEDE/site_TdB_2024_complete.py | 4 +- 0_FONCIER/TdB_FEDE/sites_TdB_fede.py | 2 +- 0_FONCIER/add_c_anim_foncier_v2.py | 2 +- 0_FONCIER/cutfantoir_bydep.py | 2 +- 1_SICEN/SERENA_siege/recovery_geo.py | 2 +- 1_SICEN/SERENA_siege/recovery_relv.py | 2 +- 1_SICEN/SERENA_siege/recovery_rhomeo.py | 2 +- 3_AZALEE/create_tab_zh_ponctuel.py | 2 +- 3_AZALEE/refHydro_to_db.py | 2 +- 3_AZALEE/tmp/hab_aggreg_cbna_2024.py | 3 +- 3_AZALEE/tmp/maj_geom_belledo.py | 2 +- 3_AZALEE/tmp/maj_tmpv.date_geom | 0 3_AZALEE/tmp/zh_plu_metro.py | 8 +- .../flore_export_sinp_with_metadata 2.py | 1 + 5_GEONATURE/EXPORT/get_zh_fromapi.py | 5 +- 5_GEONATURE/GN_ZH/tmp/epode.py | 2 +- 5_GEONATURE/GN_ZH/tmp/maj_geom.py | 4 +- 5_GEONATURE/IMPORTS/CHAR_amphi_2011.py | 2 +- .../MIGRATION/PLATIERE/correct_cdnom.py | 2 +- 5_GEONATURE/MIGRATION/TAXREF/taxref_14to16.py | 2 +- 5_GEONATURE/MONITORINGS/get_data.py | 2 +- 5_GEONATURE/pivot_bdc_status.py | 2 +- 5_GEONATURE/pivot_bdc_status_v2.py | 8 +- 6_SQL/create_view_c_acquisition_flore.sql | 64 +++++++++++++++ 6_SQL/create_view_jeu_donnees_flore.sql | 77 +++++++++++++++++++ 9_PGSZH | 1 + analyse_rps.py | 2 +- createMNT_intersects.py | 2 +- create_mbtile.py | 6 +- hydro_analyse.py | 4 +- maj_site.py | 2 +- manage_bdd.py | 2 +- tmp/AVALON - aggreg data.py | 2 +- tmp/CVB_bourbre_MC_penible.py | 6 +- 34 files changed, 189 insertions(+), 42 deletions(-) delete mode 100644 3_AZALEE/tmp/maj_tmpv.date_geom create mode 100644 6_SQL/create_view_c_acquisition_flore.sql create mode 100644 6_SQL/create_view_jeu_donnees_flore.sql create mode 160000 9_PGSZH diff --git a/0_FONCIER/TdB_FEDE/site_TdB_2024_complete.py b/0_FONCIER/TdB_FEDE/site_TdB_2024_complete.py index d50003a..bd95f08 100644 --- a/0_FONCIER/TdB_FEDE/site_TdB_2024_complete.py +++ b/0_FONCIER/TdB_FEDE/site_TdB_2024_complete.py @@ -4,8 +4,8 @@ from pycen import con_fon import pandas as pd -dico_data = '/media/colas/SRV/FICHIERS/OUTILS/BASES DE DONNEES/BILAN_FEDE_CEN/2024/TDB2024_enquete_SIG/Dico_DATA_sites_CEN_v2024.xlsx' -bilan_2023 = '/media/colas/SRV/FICHIERS/OUTILS/BASES DE DONNEES/BILAN_FEDE_CEN/2024/TDB2024_enquete_SIG/DATA N-1/Sites_CEN_38_2023.csv' +dico_data = '/media/cgeier/SRV/FICHIERS/OUTILS/BASES DE DONNEES/BILAN_FEDE_CEN/2024/TDB2024_enquete_SIG/Dico_DATA_sites_CEN_v2024.xlsx' +bilan_2023 = '/media/cgeier/SRV/FICHIERS/OUTILS/BASES DE DONNEES/BILAN_FEDE_CEN/2024/TDB2024_enquete_SIG/DATA N-1/Sites_CEN_38_2023.csv' dic = pd.read_excel(dico_data,sheet_name='sites_cen_xx_2024',header=0, usecols='F',nrows=50) dic_head_name = dic.columns[0] diff --git a/0_FONCIER/TdB_FEDE/sites_TdB_fede.py b/0_FONCIER/TdB_FEDE/sites_TdB_fede.py index b8f2ab7..239550d 100644 --- a/0_FONCIER/TdB_FEDE/sites_TdB_fede.py +++ b/0_FONCIER/TdB_FEDE/sites_TdB_fede.py @@ -18,7 +18,7 @@ from pycen import con_bdcen as con, con_fon, wfs annee = 2023 term_parcelle_conv = ['CONVENTION',"CONVENTION D'USAGE",'ACCORD VERBAL'] -path_agri = '/media/colas/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/TRAVAUX/Couches de référence/' +path_agri = '/media/cgeier/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/TRAVAUX/Couches de référence/' agri_partenaire_surf = gpd.read_file(path_agri+'AGRIS_partenaires_surface exploitées.shp') agri_partenaire = gpd.read_file(path_agri+'AGRIS_partenaires.shp') id_rnx = ['RNGL','RNIP'] diff --git a/0_FONCIER/add_c_anim_foncier_v2.py b/0_FONCIER/add_c_anim_foncier_v2.py index 98082e4..1e2489f 100644 --- a/0_FONCIER/add_c_anim_foncier_v2.py +++ b/0_FONCIER/add_c_anim_foncier_v2.py @@ -6,7 +6,7 @@ from datetime import datetime as dt sql = "SELECT * FROM sites.c_sites_zonages WHERE code_site = 'LEZE'" sql = "SELECT * FROM foncier.c_anim_foncier_v2" parc_site = gpd.read_postgis(sql,con_bdcen) -parc_site[(~parc_site.classif_prop.str.contains('cen',case=False))&(parc_site.maitrise.str.contains('acqui',case=False))].to_csv('/media/colas/SRV/FICHIERS/TRANSFERTS-EQUIPE/AB/verif_anim_foncier_v2.csv',index=False) +parc_site[(~parc_site.classif_prop.str.contains('cen',case=False))&(parc_site.maitrise.str.contains('acqui',case=False))].to_csv('/media/cgeier/SRV/FICHIERS/TRANSFERTS-EQUIPE/AB/verif_anim_foncier_v2.csv',index=False) # parc_site.loc[parc_site.maitrise=='ACQUI PAR LE CEN ISERE','maitrise'] = 'ACQUIS PAR LE CEN ISERE' # update_to_sql( # parc_site[['par_id','maitrise']],con_bdcen,'c_anim_foncier_v2','foncier','par_id' diff --git a/0_FONCIER/cutfantoir_bydep.py b/0_FONCIER/cutfantoir_bydep.py index 0fa43b6..4da7c7e 100644 --- a/0_FONCIER/cutfantoir_bydep.py +++ b/0_FONCIER/cutfantoir_bydep.py @@ -2,7 +2,7 @@ import pandas as pd import csv -path = '/media/colas/SRV/FICHIERS/TRANSFERTS-EQUIPE/CG/FONCIER/CADASTRE/2023/Fichier national FANTOIR (situation avril 2023)/' +path = '/media/cgeier/SRV/FICHIERS/TRANSFERTS-EQUIPE/CG/FONCIER/CADASTRE/2023/Fichier national FANTOIR (situation avril 2023)/' fant = path+'FANTOIR0423' lst_dep = ['07','26','38','42'] diff --git a/1_SICEN/SERENA_siege/recovery_geo.py b/1_SICEN/SERENA_siege/recovery_geo.py index 1eab2e3..fc0f864 100644 --- a/1_SICEN/SERENA_siege/recovery_geo.py +++ b/1_SICEN/SERENA_siege/recovery_geo.py @@ -19,7 +19,7 @@ def get_site_serena(): if __name__ == "__main__": # Lecture des sites SIG - PATH = '/media/colas/SRV/FICHIERS/OUTILS/BASES DE DONNEES/RHOMEO/2018/RhoMéO_Données' + PATH = '/media/cgeier/SRV/FICHIERS/OUTILS/BASES DE DONNEES/RHOMEO/2018/RhoMéO_Données' FILE = '38_sig_points_de_suivis_point.shp' sig = gpd.read_file(path.join(PATH,FILE)) diff --git a/1_SICEN/SERENA_siege/recovery_relv.py b/1_SICEN/SERENA_siege/recovery_relv.py index afaf473..e0b0c98 100644 --- a/1_SICEN/SERENA_siege/recovery_relv.py +++ b/1_SICEN/SERENA_siege/recovery_relv.py @@ -26,7 +26,7 @@ DICT_OBS_COLS = { def list_access_datatable(): - PATH_IN = '/media/colas/SRV/FICHIERS/OUTILS/BASES DE DONNEES/ESPECES/backup' + PATH_IN = '/media/cgeier/SRV/FICHIERS/OUTILS/BASES DE DONNEES/ESPECES/backup' BDD_IN = 'AVENIR.serena_V2.mdb' LST_SCHEMA = mdb.read_schema(path.join(PATH_IN,BDD_IN)) diff --git a/1_SICEN/SERENA_siege/recovery_rhomeo.py b/1_SICEN/SERENA_siege/recovery_rhomeo.py index 9289668..24a356a 100644 --- a/1_SICEN/SERENA_siege/recovery_rhomeo.py +++ b/1_SICEN/SERENA_siege/recovery_rhomeo.py @@ -8,7 +8,7 @@ from os import path postgis_sch = 'serenabase' -ACCESS_PATH = '/media/colas/SRV/FICHIERS/OUTILS/BASES DE DONNEES/RHOMEO/2012/CEN-38_RHOMEO_BDD_2012' +ACCESS_PATH = '/media/cgeier/SRV/FICHIERS/OUTILS/BASES DE DONNEES/RHOMEO/2012/CEN-38_RHOMEO_BDD_2012' ACCESS_FILE = 'BD_Rhomeo_data.mdb' DICT_COLS = { 'obse_id':'id_origine', diff --git a/3_AZALEE/create_tab_zh_ponctuel.py b/3_AZALEE/create_tab_zh_ponctuel.py index c5ab523..14e8970 100644 --- a/3_AZALEE/create_tab_zh_ponctuel.py +++ b/3_AZALEE/create_tab_zh_ponctuel.py @@ -7,7 +7,7 @@ from os import path,listdir from re import findall v_zh = zh().v_zoneshumides() -PATH = '/media/colas/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/Zones humides' +PATH = '/media/cgeier/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/Zones humides' lst_layer = [x for x in listdir(PATH) if (x.endswith('.shp') or x.endswith('.gpkg')) and x.startswith('ZHP')] def upper_first_letter(s): diff --git a/3_AZALEE/refHydro_to_db.py b/3_AZALEE/refHydro_to_db.py index 8d4abce..9c364b6 100644 --- a/3_AZALEE/refHydro_to_db.py +++ b/3_AZALEE/refHydro_to_db.py @@ -17,7 +17,7 @@ con = create_engine('postgresql+psycopg2://{0}:{1}@{2}:{3}/{4}'.format(user_cad, -file = '/media/colas/Disk2/5_BDD/RPG/1_DONNEES_LIVRAISON_2021/RPG_2-0_SHP_LAMB93_R84_2021-01-01/ILOTS_ANONYMES.shp' +file = '/media/cgeier/Disk2/5_BDD/RPG/1_DONNEES_LIVRAISON_2021/RPG_2-0_SHP_LAMB93_R84_2021-01-01/ILOTS_ANONYMES.shp' dic = { 'CD_SSBV': 'cdssbv', 'LIB_SSBV': 'nom', diff --git a/3_AZALEE/tmp/hab_aggreg_cbna_2024.py b/3_AZALEE/tmp/hab_aggreg_cbna_2024.py index e4bc6df..3bbc4a3 100644 --- a/3_AZALEE/tmp/hab_aggreg_cbna_2024.py +++ b/3_AZALEE/tmp/hab_aggreg_cbna_2024.py @@ -38,7 +38,7 @@ r_geom.sort_values(['id_site','date'],inplace=True) r_geom.drop_duplicates(['id_site'],keep='last',inplace=True) -PATH = '/home/colas/Documents/9_PROJETS/1_ZH/MAJ/Actu 2024/CBNA/zh38' +PATH = '/home/colas/Documents/9_PROJETS/1_ZH/MAJ/Actu 2024/FAIT/CBNA/zh38' file = 'hab_agreg.gpkg' df = gpd.read_file(path.join(PATH,file)) df.rename_geometry('geom', inplace=True) @@ -91,6 +91,7 @@ inters_foret.to_file(path.join(PATH,'inters.gpkg'),driver='GPKG',layer='inters_f # Fusion Géométries intersF = gpd.pd.concat([inters,inters_foret]) +intersF.to_csv(path.join(PATH,'intersection_finale_hab_zh.csv')) rgeo = (r_geom[r_geom.id_site.isin(intersF.id_site.unique())] .copy()) for id_site in rgeo.id_site.unique(): diff --git a/3_AZALEE/tmp/maj_geom_belledo.py b/3_AZALEE/tmp/maj_geom_belledo.py index 664cff4..b50f08e 100644 --- a/3_AZALEE/tmp/maj_geom_belledo.py +++ b/3_AZALEE/tmp/maj_geom_belledo.py @@ -3,7 +3,7 @@ from pycen import con, update_to_sql import geopandas as gpd -file = "/media/colas/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/PGSZH_Belledonne/Inventaire 2023/ZH_Belledonne_MAJ_2023_NB.shp" +file = "/media/cgeier/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/PGSZH_Belledonne/Inventaire 2023/ZH_Belledonne_MAJ_2023_NB.shp" df = gpd.read_file(file) df = (df[df.site_code.isin(['38BB0028','38BB0055','38RD0170'])] diff --git a/3_AZALEE/tmp/maj_tmpv.date_geom b/3_AZALEE/tmp/maj_tmpv.date_geom deleted file mode 100644 index e69de29..0000000 diff --git a/3_AZALEE/tmp/zh_plu_metro.py b/3_AZALEE/tmp/zh_plu_metro.py index c28b119..3b5c7e0 100644 --- a/3_AZALEE/tmp/zh_plu_metro.py +++ b/3_AZALEE/tmp/zh_plu_metro.py @@ -445,7 +445,7 @@ def define_author(df,is_new=False): if __name__ == "__main__": - PATH = '/media/colas/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/PLUI METRO/INV_ZH_PLUI_METRO/Mosaique/MAJ-INV-ZH MOSAIQUE 2018-SIG_BDD' + PATH = '/media/cgeier/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/PLUI METRO/INV_ZH_PLUI_METRO/Mosaique/MAJ-INV-ZH MOSAIQUE 2018-SIG_BDD' shp = 'ZH_GAM_CC45.shp' data_file = 'BDD_ZH_GAM_database.xlsx' dict_cols = { @@ -790,7 +790,7 @@ if __name__ == "__main__": insert_cnx(rpl_cnx) insertAttrsFct(rpl_fct,True) ## ADD GEOM 2023 - PATH = '/media/colas/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/PLUI METRO/INV_ZH_PLUI_METRO/' + PATH = '/media/cgeier/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/PLUI METRO/INV_ZH_PLUI_METRO/' FILE_2023 = 'zh_gam_cc45_modifByMJ&GC.gpkg' df2023 = gpd.read_file(path.join(PATH,FILE_2023)) df2023.rename_geometry('geom',inplace=True) @@ -894,7 +894,7 @@ if __name__ == "__main__": insertAttrsFct(rpl_fct,True) ## ADD GEOM 2023 - PATH = '/media/colas/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/PLUI METRO/INV_ZH_PLUI_METRO/' + PATH = '/media/cgeier/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/PLUI METRO/INV_ZH_PLUI_METRO/' FILE_2023 = 'zh_gam_cc45_modifByMJ&GC.gpkg' df2023 = gpd.read_file(path.join(PATH,FILE_2023)) df2023.rename_geometry('geom',inplace=True) @@ -1162,7 +1162,7 @@ if __name__ == "__main__": ########################## ##### ADD 2010 GEOM ###### ########################## - PATH = '/media/colas/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/VECTEURS/ETUDES/ZONES HUMIDES/INVENTAIRE_ZH/' + PATH = '/media/cgeier/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/VECTEURS/ETUDES/ZONES HUMIDES/INVENTAIRE_ZH/' FILE_2010 = 'ZH_2010 (re-save).shp' df2010 = gpd.read_file(PATH+FILE_2010) df2010.to_crs(2154,inplace=True) diff --git a/5_GEONATURE/EXPORT/flore_export_sinp_with_metadata 2.py b/5_GEONATURE/EXPORT/flore_export_sinp_with_metadata 2.py index c97f752..f378ad8 100644 --- a/5_GEONATURE/EXPORT/flore_export_sinp_with_metadata 2.py +++ b/5_GEONATURE/EXPORT/flore_export_sinp_with_metadata 2.py @@ -1,3 +1,4 @@ +# SCRIPT NON VALIDE À CE JOUR from pycen import con_gn sql = ''' diff --git a/5_GEONATURE/EXPORT/get_zh_fromapi.py b/5_GEONATURE/EXPORT/get_zh_fromapi.py index 1ffda51..78704aa 100644 --- a/5_GEONATURE/EXPORT/get_zh_fromapi.py +++ b/5_GEONATURE/EXPORT/get_zh_fromapi.py @@ -6,6 +6,7 @@ import requests from os import path import io + def get_zh(geom=None): url = 'https://geonature.cen-isere.fr/geonature/api/exports/api/9?limit=30000&{geo}' if not geom.empty : @@ -17,6 +18,7 @@ def get_zh(geom=None): geometry = 'geometry={geom}'.format(geom=geom.unary_union.wkt) else: geom = '' + print(url.format(geo=geometry)) r = requests.get(url.format(geo=geometry)) if r.status_code == 200: d = r.json() @@ -27,9 +29,10 @@ def get_zh(geom=None): return df + if __name__ == "__main__": - PATH = '/media/colas/Disk2/tmp/GEONATURE/ST MARTIN URIAGE' + PATH = '/media/cgeier/Disk2/tmp/GEONATURE/ST MARTIN URIAGE' FILE = 'ZH ENS POUR CEN 14102025.gpkg' f = gpd.read_file(path.join(PATH,FILE)) df = get_zh(f) diff --git a/5_GEONATURE/GN_ZH/tmp/epode.py b/5_GEONATURE/GN_ZH/tmp/epode.py index 43dbfd5..2000412 100644 --- a/5_GEONATURE/GN_ZH/tmp/epode.py +++ b/5_GEONATURE/GN_ZH/tmp/epode.py @@ -2,7 +2,7 @@ from pycen import con_gn,update_to_sql from os import path import geopandas as gpd -PATH = '/media/colas/SRV/FICHIERS' +PATH = '/media/cgeier/SRV/FICHIERS' FILE = 'OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/Zones humides/ACTUALISATION 2024/BE EPODE - LEZE/KIT INVENTAIRE38 MODIFIE/a envoyer prêt/GEOM/38CG0105_Epode2025 (à intégrer).gpkg' tmp = (gpd.read_file(path.join(PATH, FILE)) diff --git a/5_GEONATURE/GN_ZH/tmp/maj_geom.py b/5_GEONATURE/GN_ZH/tmp/maj_geom.py index 76fd460..144c659 100644 --- a/5_GEONATURE/GN_ZH/tmp/maj_geom.py +++ b/5_GEONATURE/GN_ZH/tmp/maj_geom.py @@ -4,8 +4,8 @@ import geopandas as gpd from pycen import con_gn, update_to_sql from os import path -PATH = '/media/colas/SRV/' -FILE = 'FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/Zones humides/diag_zh_GAM/ZH_Séchilienne/zh_sapey.gpkg' +PATH = '/media/cgeier/SRV/FICHIERS' +FILE = 'OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/Zones humides/diag_zh_GAM/ZH_Séchilienne/zh_sapey.gpkg' df = (gpd.read_file(path.join(PATH, FILE)) .rename(columns={'code_zh':'code'}) .rename_geometry('geom')) diff --git a/5_GEONATURE/IMPORTS/CHAR_amphi_2011.py b/5_GEONATURE/IMPORTS/CHAR_amphi_2011.py index e9ad83d..b272535 100644 --- a/5_GEONATURE/IMPORTS/CHAR_amphi_2011.py +++ b/5_GEONATURE/IMPORTS/CHAR_amphi_2011.py @@ -1,7 +1,7 @@ import geopandas as gpd import os -PATH = '/media/colas/SRV/FICHIERS/SITES/SITES GERES/CHAR_CHARVAS/Scientifique-technique/Faune/AMPHIBIENS' +PATH = '/media/cgeier/SRV/FICHIERS/SITES/SITES GERES/CHAR_CHARVAS/Scientifique-technique/Faune/AMPHIBIENS' file = 'Inventaires amphibiens Charvas 2011.xlsx' diff --git a/5_GEONATURE/MIGRATION/PLATIERE/correct_cdnom.py b/5_GEONATURE/MIGRATION/PLATIERE/correct_cdnom.py index fad0778..568c905 100644 --- a/5_GEONATURE/MIGRATION/PLATIERE/correct_cdnom.py +++ b/5_GEONATURE/MIGRATION/PLATIERE/correct_cdnom.py @@ -43,7 +43,7 @@ dict_taxo2 = { if __name__ == "__main__": - PATH = '/media/colas/Disk2/tmp' + PATH = '/media/cgeier/Disk2/tmp' file = '(RNN Platière) Inventaire Bryophytes L93.csv' file_out = '(RNN Platière) Inventaire Bryophytes L93 (correct cdnom).csv' df = pd.read_csv(os.path.join(PATH,file),encoding='Windows-1252',sep=';') diff --git a/5_GEONATURE/MIGRATION/TAXREF/taxref_14to16.py b/5_GEONATURE/MIGRATION/TAXREF/taxref_14to16.py index 792703f..8f36bda 100644 --- a/5_GEONATURE/MIGRATION/TAXREF/taxref_14to16.py +++ b/5_GEONATURE/MIGRATION/TAXREF/taxref_14to16.py @@ -11,7 +11,7 @@ def get_synthese(con,lst): return pd.read_sql_query(sql,con) if __name__ == "__main__": - PATH = '/media/colas/SRV/homer_geonat/home/geonatureadmin/taxhub/tmp' + PATH = '/media/cgeier/SRV/homer_geonat/home/geonatureadmin/taxhub/tmp' file = 'liste_changements.csv' chgt = pd.read_csv(os.path.join(PATH,file)) diff --git a/5_GEONATURE/MONITORINGS/get_data.py b/5_GEONATURE/MONITORINGS/get_data.py index f056d52..7823dd7 100644 --- a/5_GEONATURE/MONITORINGS/get_data.py +++ b/5_GEONATURE/MONITORINGS/get_data.py @@ -87,7 +87,7 @@ if __name__ == "__main__": module_name = "chiro" id_tax_list = 100 # taxons occtax - PATH = '/media/colas/SRV/homer_geonat/home/geonatureadmin/protocoles_suivi/{mod}/odk_form/'.format(mod=module_name) + PATH = '/media/cgeier/SRV/homer_geonat/home/geonatureadmin/protocoles_suivi/{mod}/odk_form/'.format(mod=module_name) PATH = '/home/colas/Documents/9_PROJETS/6_GEONATURE/MODULES/ODK/test/CHIRO/' csv_site_name = 'gn_sites.csv' csv_jdd_name = 'gn_jdds.csv' diff --git a/5_GEONATURE/pivot_bdc_status.py b/5_GEONATURE/pivot_bdc_status.py index 850d5c0..2361a25 100644 --- a/5_GEONATURE/pivot_bdc_status.py +++ b/5_GEONATURE/pivot_bdc_status.py @@ -4,7 +4,7 @@ from pycen import con_gn NAME_OUT = '/home/colas/Documents/tmp/v_bdc_status2.xlsx' -FileIn = '/media/colas/SRV/FICHIERS/TRANSFERTS-EQUIPE/CG/BDC_STATUTS_15.xls' +FileIn = '/media/cgeier/SRV/FICHIERS/TRANSFERTS-EQUIPE/CG/BDC_STATUTS_15.xls' db = False if db : diff --git a/5_GEONATURE/pivot_bdc_status_v2.py b/5_GEONATURE/pivot_bdc_status_v2.py index 102747d..347fafe 100644 --- a/5_GEONATURE/pivot_bdc_status_v2.py +++ b/5_GEONATURE/pivot_bdc_status_v2.py @@ -217,9 +217,9 @@ if __name__ == "__main__": api_taxref = 'https://geonature.cen-isere.fr/taxhub/api/taxref' # Paramètres de chargement du fichier des taxons - PATH0 = '/media/colas/SRV/FICHIERS' - PATH = 'SITES/SITES GERES/PLAN_PLANCHETTES/Scientifique et technique/Flore et habitats/Suivi flore patrimoniale 2025' - file = 'donnes_sp_suivi2025.xlsx' + PATH0 = '/home/cgeier/Téléchargements' + PATH = '' + file = 'CHASS_synthese_observations_2026-01-28.xlsx' sheet = 'liste sp' # Liste des CD_NOM en entrée @@ -279,7 +279,7 @@ if __name__ == "__main__": pivlib = tab_sp.merge(pivlib,on=[cd_col],how='left') print('INIT writer') - NAME_OUT = os.path.join(PATH0,PATH,sheet+'_status.xlsx') + NAME_OUT = os.path.join('~/',sheet+'_status.xlsx') with pd.ExcelWriter(NAME_OUT) as writer: df.to_excel( writer,sheet_name='v_bdc_status',index=False diff --git a/6_SQL/create_view_c_acquisition_flore.sql b/6_SQL/create_view_c_acquisition_flore.sql new file mode 100644 index 0000000..42a208b --- /dev/null +++ b/6_SQL/create_view_c_acquisition_flore.sql @@ -0,0 +1,64 @@ +CREATE OR REPLACE VIEW gn_exports.v_synthese_sinp_acquisition_flore_with_metadata_for_gn2pg AS +WITH af_actors AS + (SELECT cafa.* + FROM gn_meta.cor_acquisition_framework_actor cafa + LEFT JOIN utilisateurs.bib_organismes borg ON cafa.id_organism = borg.id_organisme + WHERE borg.uuid_organisme = '5a433bd0-2070-25d9-e053-2614a8c026f8'::uuid + --OR borg.uuid_organisme = 'a3c44538-f22a-4134-9e21-28646a73986b'::uuid + ), act AS + (SELECT * + FROM crosstab( 'SELECT id_acquisition_framework, id_nomenclature_actor_role, id_organism + FROM gn_meta.cor_acquisition_framework_actor + WHERE id_acquisition_framework = 1 OR id_acquisition_framework = 6 + ORDER BY 1,2' , $$VALUES ('359'::text), ('361')$$ ) AS ct ("id_acquisition_framework" int, "Contact principal" int, "Producteur du jeu de données" int)) +SELECT taf.id_acquisition_framework AS id_ca, + taf.unique_acquisition_framework_id AS id_sinp_ca, + taf.acquisition_framework_name AS libelle, + NULL::text AS cadre_acquisition_parent, + taf.acquisition_framework_desc AS description, + taf.keywords AS mots_cles, + ref1.label_default as niveau_territorial, + taf.territory_desc AS description_territoire, + ref2.label_default AS objectifs_cadre_acquisition, + ref4.label_default AS volet_SINP, + ref3.label_default AS type_financement, + taf.target_description AS description_cible, + to_char(taf.meta_create_date, 'DD-MM-YYYY')::date AS date_debut, + NULL::date AS date_fin, + ref5.nom_organisme AS acteur1_organisme, + NULL::text AS acteur1_personne_groupe, + 'Contact principal' AS acteur1_type_role, + ref6.nom_organisme AS acteur2_organisme, + NULL::text AS acteur2_personne_groupe, + CASE + WHEN ref6.nom_organisme IS NOT NULL THEN 'Producteur du jeu de données' + ELSE NULL + END AS acteur2_type_role, + NULL::text AS acteur3_organisme, + NULL::text AS acteur3_personne_groupe, + NULL::text AS acteur3_type_role +FROM gn_meta.t_acquisition_frameworks taf +JOIN af_actors ON af_actors.id_acquisition_framework = taf.id_acquisition_framework +JOIN gn_meta.cor_acquisition_framework_objectif obj ON obj.id_acquisition_framework = taf.id_acquisition_framework +JOIN ref_nomenclatures.t_nomenclatures ref1 ON ref1.id_nomenclature = taf.id_nomenclature_territorial_level +JOIN ref_nomenclatures.t_nomenclatures ref2 ON ref2.id_nomenclature = obj.id_nomenclature_objectif +JOIN ref_nomenclatures.t_nomenclatures ref3 ON ref3.id_nomenclature = taf.id_nomenclature_financing_type +JOIN gn_meta.cor_acquisition_framework_voletsinp sinp ON sinp.id_acquisition_framework = taf.id_acquisition_framework +JOIN ref_nomenclatures.t_nomenclatures ref4 ON ref4.id_nomenclature = sinp.id_nomenclature_voletsinp +JOIN act ON act.id_acquisition_framework = taf.id_acquisition_framework +LEFT JOIN utilisateurs.bib_organismes ref5 ON ref5.id_organisme = act."Contact principal" +LEFT JOIN utilisateurs.bib_organismes ref6 ON ref6.id_organisme = act."Producteur du jeu de données" +GROUP BY taf.id_acquisition_framework, + taf.unique_acquisition_framework_id, + taf.acquisition_framework_name, + taf.acquisition_framework_desc, + taf.keywords, + ref1.label_default, + taf.territory_desc, + ref2.label_default, + ref4.label_default, + ref3.label_default, + taf.target_description, + to_char(taf.meta_create_date, 'DD-MM-YYYY')::date, + ref5.nom_organisme, + ref6.nom_organisme \ No newline at end of file diff --git a/6_SQL/create_view_jeu_donnees_flore.sql b/6_SQL/create_view_jeu_donnees_flore.sql new file mode 100644 index 0000000..24f29d8 --- /dev/null +++ b/6_SQL/create_view_jeu_donnees_flore.sql @@ -0,0 +1,77 @@ +CREATE OR REPLACE VIEW gn_exports.v_synthese_sinp_jeu_donnees_flore_with_metadata_for_gn2pg AS +WITH ds_actors AS ( + SELECT cda.id_dataset, + borg.nom_organisme, + cda.id_role, + borg.uuid_organisme, + tro.nom_role, + tro.prenom_role, + borg.email_organisme, + tro.email + FROM gn_meta.cor_dataset_actor cda + LEFT JOIN utilisateurs.bib_organismes borg ON cda.id_organism = borg.id_organisme + LEFT JOIN utilisateurs.t_roles tro ON cda.id_role = tro.id_role + JOIN ref_nomenclatures.t_nomenclatures tn ON cda.id_nomenclature_actor_role = tn.id_nomenclature + -- WHERE borg.uuid_organisme = '5a433bd0-2070-25d9-e053-2614a8c026f8'::uuid + -- OR borg.uuid_organisme = 'a3c44538-f22a-4134-9e21-28646a73986b'::uuid + ), + actor AS ( + SELECT * + FROM crosstab( 'SELECT id_dataset, id_nomenclature_actor_role, id_organism + FROM gn_meta.cor_dataset_actor + ORDER BY 1,2' , + $$VALUES ('359'), ('364'), ('365'), ('395')$$ ) AS ct ("id_dataset" int, "Contact principal" int, "Producteur du jeu de données" int, "Point de contact base de données de production" int, "Point de contact pour les métadonnées" int) + ), + ds AS ( + SELECT tds.id_dataset AS id_jdd, + tds.unique_dataset_id AS id_sinp_jdd, + acq.acquisition_framework_name AS cadre_acquisiton, + tds.dataset_name AS nom_jeu_donnees, + tds.dataset_shortname AS nom_court, + tds.dataset_desc AS description, + ndso.label_default AS objectif, + ncm.label_default AS methode_collecte, + ndo.label_default AS origine_donnees, + nss.label_default AS statut_source, + tds.keywords AS mots_cles, + act1.nom_organisme AS acteur1_organisme, + NULL::text AS acteur1_personne_groupe, + 'Contact principal' AS acteur1_type_role, + act2.nom_organisme AS acteur2_organisme, + NULL::text AS acteur2_personne_groupe, + CASE + WHEN act2.nom_organisme IS NOT NULL THEN 'Producteur du jeu de données' + ELSE NULL + END AS acteur2_type_role, + act3.nom_organisme AS acteur3_organisme, + NULL::text AS acteur3_personne_groupe, + CASE + WHEN act3.nom_organisme IS NOT NULL THEN 'Point de contact base de données de production' + ELSE NULL + END AS acteur3_type_role, + act4.nom_organisme AS acteur4_organisme, + NULL::text AS acteur4_personne_groupe, + CASE + WHEN act4.nom_organisme IS NOT NULL THEN 'Point de contact pour les métadonnées' + ELSE NULL + END AS acteur4_type_role + FROM gn_meta.t_datasets tds + JOIN ds_actors ON ds_actors.id_dataset = tds.id_dataset + JOIN actor ON actor.id_dataset = tds.id_dataset + JOIN gn_meta.t_acquisition_frameworks acq ON tds.id_acquisition_framework = acq.id_acquisition_framework + LEFT JOIN gn_meta.cor_dataset_territory cdt ON cdt.id_dataset = tds.id_dataset + LEFT JOIN ref_nomenclatures.t_nomenclatures ndt ON tds.id_nomenclature_data_type = ndt.id_nomenclature + LEFT JOIN ref_nomenclatures.t_nomenclatures ncm ON tds.id_nomenclature_collecting_method = ncm.id_nomenclature + LEFT JOIN ref_nomenclatures.t_nomenclatures ndo ON tds.id_nomenclature_data_origin = ndo.id_nomenclature + LEFT JOIN ref_nomenclatures.t_nomenclatures ndso ON tds.id_nomenclature_dataset_objectif = ndso.id_nomenclature + LEFT JOIN ref_nomenclatures.t_nomenclatures nrt ON tds.id_nomenclature_resource_type = nrt.id_nomenclature + LEFT JOIN ref_nomenclatures.t_nomenclatures nss ON tds.id_nomenclature_source_status = nss.id_nomenclature + LEFT JOIN utilisateurs.bib_organismes act1 ON actor."Contact principal" = act1.id_organisme + LEFT JOIN utilisateurs.bib_organismes act2 ON actor."Producteur du jeu de données" = act2.id_organisme + LEFT JOIN utilisateurs.bib_organismes act3 ON actor."Point de contact base de données de production" = act3.id_organisme + LEFT JOIN utilisateurs.bib_organismes act4 ON actor."Point de contact pour les métadonnées" = act4.id_organisme + GROUP BY tds.id_dataset, acq.acquisition_framework_name, tds.unique_dataset_id, tds.dataset_name, tds.dataset_shortname, tds.dataset_desc, ndso.label_default, ncm.label_default, ndo.label_default, nss.label_default, ds_actors.nom_organisme, act1.nom_organisme, act2.nom_organisme, act3.nom_organisme, act4.nom_organisme + ) +SELECT * FROM ds +--WHERE acteur1_organisme IN ('Conservatoire d’espaces naturels Isère') +; \ No newline at end of file diff --git a/9_PGSZH b/9_PGSZH new file mode 160000 index 0000000..6d0a279 --- /dev/null +++ b/9_PGSZH @@ -0,0 +1 @@ +Subproject commit 6d0a2798452f80f4cdbdfc96d5a90b481c7c175a diff --git a/analyse_rps.py b/analyse_rps.py index 96e261a..b7aee1f 100644 --- a/analyse_rps.py +++ b/analyse_rps.py @@ -136,7 +136,7 @@ def make_plot(data): if __name__ == "__main__": - PATH = '/media/colas/SRV/FICHIERS/Délégués Personnel_CSE/6_Enquêtes/Enquêtes RPS' + PATH = '/media/cgeier/SRV/FICHIERS/Délégués Personnel_CSE/6_Enquêtes/Enquêtes RPS' file = 'Enquete_Nat_RPS_2023_CEN_ISERE.xlsx' df = pd.read_excel(os.path.join(PATH,file)) diff --git a/createMNT_intersects.py b/createMNT_intersects.py index 00f8fda..1a3816b 100644 --- a/createMNT_intersects.py +++ b/createMNT_intersects.py @@ -22,7 +22,7 @@ out = path_tmp + 'etandLong_MNT1m.tif' read = 'file' # 'file' or 'bdd' # if read == 'file' # file_geom = 'cheminversmageometrie/monfichier' -file_geom = "/media/colas/SRV/FICHIERS/TRANSFERTS-EQUIPE/CG/Etang des longs - zone d'étude/Zone d'étude.shp" +file_geom = "/media/cgeier/SRV/FICHIERS/TRANSFERTS-EQUIPE/CG/Etang des longs - zone d'étude/Zone d'étude.shp" # if read == 'bdd' sql_select = "SELECT code_site, geom FROM sites.c_sites_zonages WHERE code_site='GOUR' AND type_zonage = 'ZO'" user = 'cen_admin' diff --git a/create_mbtile.py b/create_mbtile.py index e9c0c9e..9a62f40 100644 --- a/create_mbtile.py +++ b/create_mbtile.py @@ -46,7 +46,7 @@ def gen_mbtiles2(xml,output,format='mbtiles'): def gdalwarp(vrt,mbtiles): # exemple : Découpage d'un raster à partir d'un polygon - # gdalwarp -overwrite -s_srs "EPSG:2154" -t_srs "EPSG:2154" -of GTiff -cutline "PG:dbname='azalee' host=91.134.194.221 port=5432 sslmode=disable user='cgeier' password='adm1n*bdCen'" -cl "ref_territoire.isere_platiere" -crop_to_cutline -multi -co "COMPRESS=JPEG" -co "JPEG_QUALITY=75" "/media/colas/Disk2/5_BDD/ZH_prob/ZH_probS_Auvergne-Rhone-Alpes/ZH_probS_region84.tif" "/media/colas/Disk2/5_BDD/ZH_prob/ZH_probS_Auvergne-Rhone-Alpes/ZH_probS_dept38.tif" + # gdalwarp -overwrite -s_srs "EPSG:2154" -t_srs "EPSG:2154" -of GTiff -cutline "PG:dbname='azalee' host=91.134.194.221 port=5432 sslmode=disable user='cgeier' password='adm1n*bdCen'" -cl "ref_territoire.isere_platiere" -crop_to_cutline -multi -co "COMPRESS=JPEG" -co "JPEG_QUALITY=75" "/media/cgeier/Disk2/5_BDD/ZH_prob/ZH_probS_Auvergne-Rhone-Alpes/ZH_probS_region84.tif" "/media/cgeier/Disk2/5_BDD/ZH_prob/ZH_probS_Auvergne-Rhone-Alpes/ZH_probS_dept38.tif" cmd = ''' gdalwarp -of MBTiles -s_srs epsg:2154 -t_srs epsg:3857 %s %s ''' % (vrt,mbtiles) @@ -71,7 +71,7 @@ if __name__ == "__main__": flux = 'http://tiles.craig.fr/ortho/service?VERSION=1.3.0&crs=EPSG:2154&featureCount=10&format=image/jpeg&layers=ortho_2021&maxHeight=256&maxWidth=256' # flux = 'http://mt.google.com/vt/lyrs=s&x=${x}&y=${y}&z=${z}' - PATH = '/media/colas/Disk2' + PATH = '/media/cgeier/Disk2' xml = 'googlemaps.xml' xml = 'craig.xml' xml = 'output.xml' @@ -94,4 +94,4 @@ if __name__ == "__main__": # ds = gdal.Open(os.path.join(PATH,vrt)) -# gdal_translate -outsize 50% 50% -projwin 631397 5672590 639669 5659275 -of MBTILES -co "COMPRESS=YES" -co "TILE_FORMAT=JPEG" -co "QUALITY=80" "/media/colas/Disk2/output.xml" "/media/colas/Disk2/ign_ortho2024_38.mbtiles" +# gdal_translate -outsize 50% 50% -projwin 631397 5672590 639669 5659275 -of MBTILES -co "COMPRESS=YES" -co "TILE_FORMAT=JPEG" -co "QUALITY=80" "/media/cgeier/Disk2/output.xml" "/media/cgeier/Disk2/ign_ortho2024_38.mbtiles" diff --git a/hydro_analyse.py b/hydro_analyse.py index 5ef63aa..a680cd1 100644 --- a/hydro_analyse.py +++ b/hydro_analyse.py @@ -108,7 +108,7 @@ if __name__ == "__main__": # if nr_worker_threads != 7: # set_nr_worker_threads(7) - PATH = "/media/colas/SRV/FICHIERS/SITES/DISTRICTS NATURELS/BASSE VALLEE DE L'ISERE/SONE/TUFI_Sone-à-Soi/SIG/" + PATH = "/media/cgeier/SRV/FICHIERS/SITES/DISTRICTS NATURELS/BASSE VALLEE DE L'ISERE/SONE/TUFI_Sone-à-Soi/SIG/" raster = PATH+"MNT_1m.tif" dst_filename = '/home/colas/Documents/tmp/OUTPT.map' xyz_filename = '/home/colas/Documents/tmp/OUTPT.xyz' @@ -188,4 +188,4 @@ if __name__ == "__main__": # # processing.run("pcraster:comparisonoperators", {'INPUT':'%3Fcrs%3DEPSG%3A2154%26extent%3D868999.5%2C6447000.5%2C885999.5%2C6467000.5%26width%3D17000%26height%3D20000%26formula%3D%2522strahler%401%2522%2520%253E%253D5%2520%26strahler%3Auri%3D%2Fhome%2Fcolas%2FDocuments%2Ftmp%2Fstrahler.map%26strahler%3Aprovider%3Dgdal','INPUT1':0,'INPUT2':'%3Fcrs%3DEPSG%3A2154%26extent%3D868999.5%2C6447000.5%2C885999.5%2C6467000.5%26width%3D17000%26height%3D20000%26formula%3D%2522strahler%401%2522%2520%253E%253D5%2520%26strahler%3Auri%3D%2Fhome%2Fcolas%2FDocuments%2Ftmp%2Fstrahler.map%26strahler%3Aprovider%3Dgdal','OUTPUT':'TEMPORARY_OUTPUT'}) - # # processing.run("pcraster:col2map", {'INPUT':'/home/colas/Documents/tmp/bilan_sites.csv','INPUT1':"/media/colas/SRV/FICHIERS/SITES/DISTRICTS NATURELS/BASSE VALLEE DE L'ISERE/SONE/TUFI_Sone-à-Soi/SIG/MNT_1m.tif",'INPUT2':0,'OUTPUT':'TEMPORARY_OUTPUT'}) \ No newline at end of file + # # processing.run("pcraster:col2map", {'INPUT':'/home/colas/Documents/tmp/bilan_sites.csv','INPUT1':"/media/cgeier/SRV/FICHIERS/SITES/DISTRICTS NATURELS/BASSE VALLEE DE L'ISERE/SONE/TUFI_Sone-à-Soi/SIG/MNT_1m.tif",'INPUT2':0,'OUTPUT':'TEMPORARY_OUTPUT'}) \ No newline at end of file diff --git a/maj_site.py b/maj_site.py index 5894291..c99d68b 100644 --- a/maj_site.py +++ b/maj_site.py @@ -2,7 +2,7 @@ from pycen import con_bdcen,con_fon,update_to_sql from pycen.tools import Polygons_to_MultiPolygon import geopandas as gpd -PATHIN = '/media/colas/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/SITES/LEZE/PG2022/' +PATHIN = '/media/cgeier/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/SITES/LEZE/PG2022/' FILEIN = 'LEZE_zonage_2022.shp' SITE_NAME = 'LEZE' SITE_TYPE = '' diff --git a/manage_bdd.py b/manage_bdd.py index ddd1e46..e9bfb3e 100644 --- a/manage_bdd.py +++ b/manage_bdd.py @@ -55,7 +55,7 @@ def copy_2another_server(host_in,base_in,user_in,host_out,base_out,user_out,pass if __name__ == "__main__": dump_bdd( - file_out='/media/colas/SRV/FICHIERS/OUTILS/BASES DE DONNEES/FONCIER/CEN73/V4/_backup_V3/bd_cen_V3.sql', + file_out='/media/cgeier/SRV/FICHIERS/OUTILS/BASES DE DONNEES/FONCIER/CEN73/V4/_backup_V3/bd_cen_V3.sql', host='91.134.194.221', base='bd_cen', user='cgeier', diff --git a/tmp/AVALON - aggreg data.py b/tmp/AVALON - aggreg data.py index 3806d18..bc7c20b 100644 --- a/tmp/AVALON - aggreg data.py +++ b/tmp/AVALON - aggreg data.py @@ -21,7 +21,7 @@ dict_gn = { 'group2_inp':'group2_inpn' } -PATH = "/media/colas/SRV/FICHIERS/SITES/SITES GERES/AVAL_AVALON/Scientifique et technique/Données historiques/Marais d'Avalon" +PATH = "/media/cgeier/SRV/FICHIERS/SITES/SITES GERES/AVAL_AVALON/Scientifique et technique/Données historiques/Marais d'Avalon" biodiv1 = gpd.read_file(path.join(PATH,'Biodi_Aura_Mare Ratier','POINT_2023_12_13_08h35m51.shp')) # biodiv2 = gpd.read_file(path.join(PATH,'Biodiv_Aura_Marais','POINT_2023_12_13_08h41m24.shp')) diff --git a/tmp/CVB_bourbre_MC_penible.py b/tmp/CVB_bourbre_MC_penible.py index 8be4adf..b0edb2e 100644 --- a/tmp/CVB_bourbre_MC_penible.py +++ b/tmp/CVB_bourbre_MC_penible.py @@ -7,8 +7,8 @@ import pandas as pd import geopandas as gpd -path_fichsite = '/media/colas/SRV/FICHIERS/OPERATIONS (EX ETUDES)/ETUDES EN COURS/CORRIDORS/CVB_Bourbre/#42_Mesures compensatoires/BM/Evaluation des sites' -path_geom = '/media/colas/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/CVB_Bourbre/Cartographie CVB Bourbre 2021/Mesures compensatoires/0_FINAL' +path_fichsite = '/media/cgeier/SRV/FICHIERS/OPERATIONS (EX ETUDES)/ETUDES EN COURS/CORRIDORS/CVB_Bourbre/#42_Mesures compensatoires/BM/Evaluation des sites' +path_geom = '/media/cgeier/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/CVB_Bourbre/Cartographie CVB Bourbre 2021/Mesures compensatoires/0_FINAL' c_geom = 'mc_isere_CVBbourbre.gpkg' c_geom_det = 'mc_isere_CVBbourbre_détaillé.gpkg' pathout = '/home/colas/Documents/tmp/CVB_Bourbre' @@ -192,7 +192,7 @@ gdf.to_file(pathout+'/'+ c_geom, driver='GPKG') ##################### ##################### ##################### -path = '/media/colas/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/CVB_Bourbre/Cartographie CVB Bourbre 2021/Mesures compensatoires' +path = '/media/cgeier/SRV/FICHIERS/OUTILS/CARTOGRAPHIE/ESPACE DE TRAVAIL/ETUDES/CVB_Bourbre/Cartographie CVB Bourbre 2021/Mesures compensatoires' l1 = 'LOT 1.shp' l2 = 'LOT 2.shp' l3 = 'LOT 3.shp'