The batcher.py file can be used to generate the Simple Archive Format (SAF) file structure required for performing batch uploads to DSpace. The script produces a file structure as specified in the DSpace documentation (see here). This includes the creation of folders for each research item, with directory names following the pattern 'item_001', 'item_002', and so on. Each item directory will contain at least three files:
- Bitstream file
- Contents file
- Metadata XML file (named
dublin_core.xml) - Other optional files (currently not handled by the script):
collectionsrelationships
Please ensure you use the requirements.txt file to install all necessary dependencies.
For authentication (MongoDB Client bot URI) in auth_functions.py, please fill in the auth_functions_config.json file or contact us for assistance.
First, import the required class and instantiate it. Provide the following arguments:
- Your MongoDB database name
- Collection name
- File path to the folder containing all raw data (named
files)
# Importing the class
from batcher import BatchGenerator
# Instantiating the BatchGenerator class
bat_gen = BatchGenerator(
db_name="<mongodb-database-name>",
collection_name="<mongodb-collection-name>",
files_folder_path="<file-path-to-rawdata-folder>"
)
# To check filename match
bat_gen.check_files_directory()
# To check staged metadata values (Optional)
bat_gen.staged_data()
# To generate the SAF batch directory
bat_gen.create_batch_dir()Le fichier batcher.py peut être utilisé pour générer la structure de fichiers Simple Archive Format (SAF) requise pour effectuer des téléversements par lots dans DSpace.
Le script produit une structure de fichiers conforme à la documentation de DSpace (voir ici).
Cela inclut la création de dossiers pour chaque élément de recherche, avec des noms de répertoire suivant le modèle 'item_001', 'item_002', etc.
Chaque dossier d’élément contiendra au moins trois fichiers :
- Fichier Bitstream
- Fichier
contents - Fichier XML de métadonnées (nommé
dublin_core.xml) - Autres fichiers optionnels (actuellement non pris en charge par le script) :
collectionsrelationships
Veuillez vous assurer d’utiliser le fichier requirements.txt pour installer toutes les dépendances nécessaires.
Pour l’authentification (URI du bot client MongoDB) dans auth_functions.py, veuillez remplir le fichier auth_functions_config.json ou nous contacter pour obtenir de l’aide.
Commencez par importer la classe requise et l’instancier. Fournissez les arguments suivants :
- Nom de votre base de données MongoDB
- Nom de la collection
- Chemin du dossier contenant toutes les données brutes (nommé
files)
# Importation de la classe
from batcher import BatchGenerator
# Instanciation de la classe BatchGenerator
bat_gen = BatchGenerator(
db_name="<mongodb-database-name>",
collection_name="<mongodb-collection-name>",
files_folder_path="<file-path-to-rawdata-folder>"
)
# Pour vérifier la correspondance des noms de fichiers
bat_gen.check_files_directory()
# Pour vérifier les métadonnées mises en attente (Optionnel)
bat_gen.staged_data()
# Pour générer le répertoire de lot SAF
bat_gen.create_batch_dir()