From 9d8c2436b84cfd45e66ca26e875d0e693e02f040 Mon Sep 17 00:00:00 2001 From: Rachid Aliouat <rachid.aliouat@univ-lille.fr> Date: Wed, 4 Jun 2025 08:46:31 +0200 Subject: [PATCH] Gestion des sets : cle api dans fichier dedie cle.key --- gestion_des_sets/cle.exemple | 2 ++ gestion_des_sets/config.exemple | 4 +--- gestion_des_sets/recup-sets-alma.pl | 29 +++++++++++++++++++++++++---- 3 files changed, 28 insertions(+), 7 deletions(-) create mode 100644 gestion_des_sets/cle.exemple diff --git a/gestion_des_sets/cle.exemple b/gestion_des_sets/cle.exemple new file mode 100644 index 0000000..a0b34fe --- /dev/null +++ b/gestion_des_sets/cle.exemple @@ -0,0 +1,2 @@ +api_user_conf RecupConfSandBox +api_cle_conf l8xx403e####################bcf612 diff --git a/gestion_des_sets/config.exemple b/gestion_des_sets/config.exemple index 07ec343..4923efd 100644 --- a/gestion_des_sets/config.exemple +++ b/gestion_des_sets/config.exemple @@ -1,6 +1,4 @@ -api_user_conf RecupConfSandBox -api_cle_conf l8xx403e####################bcf612 -set_id 123456891011213141516 +set_id 8674129520005601 fic_sortie resultats.csv horodatage no diff --git a/gestion_des_sets/recup-sets-alma.pl b/gestion_des_sets/recup-sets-alma.pl index 790472f..2210697 100644 --- a/gestion_des_sets/recup-sets-alma.pl +++ b/gestion_des_sets/recup-sets-alma.pl @@ -4,7 +4,8 @@ # Le 07/02/2023 # API Configuration and Administration # Récupérer les résultats de recherche d'un jeu -# 23-02-2023 correctif si jeu de resultat existe mais ne retourne aucun resultat +# 23-02-2023 correctif si jeu de resultat existe mais ne retourne aucun resultat +# 04/06/2025 : fichier cle.key dedié aux clés api. les clés api ne sont plus mise dans les fichier de conf. plus pratique pour la gestion GIT. ################# use strict; use warnings; @@ -17,8 +18,11 @@ my @tab_resultats=(); my @tab_ppn=(); my $indice=0; my $j=0; +my $nom_fic_cle="cle.key"; # les clés API impérativement dans ce fichier my $nom_fic_conf=""; my $nom_fic_csv=""; +my %hash_conf=(); +my @tab_inter=(); my %hash_entete=(); # pour retrouver plus facilement une valeur my @tab_entete=(); # pour parcourir dans l'ordre les colonnes my $ligne_entete_csv=""; @@ -28,16 +32,33 @@ my $taille_lot=100; # taille d'un lot de resultat i.e "la limite" #my $max_ppn_url = 100; # nombre max de bloc ppn dans l'url : attention une url est limitée en nombre d'octect : pas plus de 100 PPN car c'est encapsulé dans des balises XML verbeuses... #my $compteur_ppn=0; +if (!(exists $ARGV[0])) {print "Manque des fichiers en parametre : perl recup-sets-alma.pl fichier-conf.conf.\n";exit(0)}; $nom_fic_conf=$ARGV[0]; +##### LIRE LE FICHIER DE CLE + +open (CONF, $nom_fic_cle) or die "Ouverture fichier de cle api $nom_fic_cle impossible , cause : $! \n"; +print "lecture des cle api:\n"; +print "-" x 20, "\n"; +@tab_inter = <CONF>; +close(CONF); +my $i=0; +for ($i=0;$i<=$#tab_inter;$i++) { + #print $tab_inter[$i]; + my @ligne=split('\t',$tab_inter[$i]); # decoupage ligne + $hash_conf{$ligne[0]}=epure($ligne[1]); # alimentation de la table de hash avec les cles + + +} + ##### LIRE LE FICHIER DE CONF -my %hash_conf=(); + open (CONF, $nom_fic_conf) or die "Ouverture fichier de configuration $nom_fic_conf impossible , cause : $! \n"; print "lecture de la configuration:\n"; print "-" x 20, "\n"; -my @tab_inter = <CONF>; +@tab_inter = <CONF>; close(CONF); -my $i=0; +$i=0; for ($i=0;$i<=$#tab_inter;$i++) { print $tab_inter[$i]; my @ligne=split('\t',$tab_inter[$i]); # decoupage ligne -- GitLab