{"id":15520267,"url":"https://github.com/hugoschtr/gallicality","last_synced_at":"2025-04-23T04:42:11.787Z","repository":{"id":191383322,"uuid":"336406451","full_name":"HugoSchtr/Gallicality","owner":"HugoSchtr","description":"A command line interface for downloading high definition images from Gallica's IIIF API.","archived":false,"fork":false,"pushed_at":"2021-02-06T21:38:36.000Z","size":14,"stargazers_count":10,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-29T22:11:36.758Z","etag":null,"topics":["gallica","iiif"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HugoSchtr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2021-02-05T22:44:27.000Z","updated_at":"2024-03-14T09:26:16.000Z","dependencies_parsed_at":"2023-08-29T17:14:08.925Z","dependency_job_id":null,"html_url":"https://github.com/HugoSchtr/Gallicality","commit_stats":null,"previous_names":["hugoschtr/gallicality"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HugoSchtr%2FGallicality","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HugoSchtr%2FGallicality/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HugoSchtr%2FGallicality/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HugoSchtr%2FGallicality/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HugoSchtr","download_url":"https://codeload.github.com/HugoSchtr/Gallicality/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250372718,"owners_count":21419720,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gallica","iiif"],"created_at":"2024-10-02T10:25:23.716Z","updated_at":"2025-04-23T04:42:11.766Z","avatar_url":"https://github.com/HugoSchtr.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Description\n\nCLI permettant de télécharger les images d'un manifest ark, \ns'il est dans le domaine public, via l'API IIIF de Gallica.\nIl permet de récupérer des images de meilleure qualité par\nrapport aux téléchargements image par image depuis l'interface web de Gallica.\n\nTélécharge des fichiers images à partir d'un intervalle de folios,\nprésents dans un id ark. __Ce script présuppose donc une connaissance \ndu contenu de l'ark duquel on souhaite avoir les images.__ \n\nEnregistrement par défaut des fichiers image en __JPEG__ dans un nouveau dossier, situé\nlà où se trouve le script python. Le nommage des fichiers respecte le numéro de folio.\nIl est possible de télécharger les fichiers en __TIFF__ et en __PNG__ grâce à des options \ndans le CLI. \n\nSi je télécharge l'image du folio 198 en JPEG, mon fichier sera nommé \"f198.jpg\" et sera\nenregistré dans mon répertoire lenomdurépertoirequejaichoisi.  \n\nLe script génère également un fichier csv, nommé par l'utilisateur.ice, regroupant les\nmetadata de l'identifiant ark.\n\n# Comment ça marche\n\nUne seule commande est disponible : query\n\n## Pour exécuter le script :\n\n```\npython gallicality.py query ark from_f to_f directory_name csv_file_name\n```\n\n* ark : ID ARK\n* from_f : numéro de folio indiquant le départ de l'intervalle de téléchargement\n* to_f : numéro de folio indiquant la fin de l'intervalle de téléchargement\n* directory_name : nom du nouveau dossier créé, dans lequel seront enregistrées les images. \n* csv_file_name : nom du fichier csv créé où sont regroupées les métadonnées.\n\nPar exemple, pour récupérer les images des folios 7 à 20 en JPEG du [Horla](https://gallica.bnf.fr/ark:/12148/bpt6k9923506/) de Guy de Maupassant,\nédité par la librairie Ollendorff, en 1908, à Paris, et conservé à la Bibliothèque nationale de France :\n \n```\npython gallicality.py query ark:/12148/bpt6k9923506 7 20 le_horla le_horla_metadata\n```\n\n### Il est possible de récupérer les images en TIFF avec l'option -t ou --tif \n\n```\npython gallicality.py query ark:/12148/bpt6k9923506 7 20 le_horla le_horla_metadata -t\n```\nOu bien :\n```\npython gallicality.py query ark:/12148/bpt6k9923506 7 20 le_horla le_horla_metadata -tif\n```\n\n### Ou en PNG avec l'option -p ou --png\n\n```\npython gallicality.py query ark:/12148/bpt6k9923506 7 20 le_horla le_horla_metadata -p\n```\nOu bien :\n```\npython gallicality.py query ark:/12148/bpt6k9923506 7 20 le_horla le_horla_metadata --png\n```\n\n\n# Requirements\n\nPour faire fonctionner ce script :\n\n## Linux (Ubuntu/Debian) : \n\nTéléchargez ou clonez ce repository Github sur votre machine, au sein du dossier de votre choix.\nDans ce dossier, créez un nouvel environnement virtuel qui sera utilisé\npour installer les librairies nécessaires au fonctionnement du script et dans lequel il sera exécuté.\n\nPour cela, une fois dans votre dossier, ouvrez un terminal et tapez la commande suivante pour créer\nun nouvel environnement virtuel :\n\n```\nvirtualenv le_nom_de l'environnement_virtuel_que_vous_aurez_choisi -p python3\n```\n\nPour l'activer, tapez la commande suivante : \n\n```\nsource le_nom_de l'environnement_virtuel_que_vous_aurez_choisi/bin/activate\n```\n\nLes librairies à télécharger dans l'environnement virtuel, une fois que celui-ci est activé, sont les suivantes : \n\n* requests\n* click\n* Pillow\n\nL'installation peut se faire grâce au fichier requirements.txt avec la commande suivante, dans le terminal :\n\n```\npip install -r requirements.txt\n```\n\n### Quelques informations sur la librairie Pillow\n\nPillow est une librairie permettant d'ouvrir, manipuler et sauvegarder des formats d'images. \nLe script utilise ici le module Image de Pillow.\nVoir le site officiel de Pillow : https://pillow.readthedocs.io/en/stable/index.html\nDocumentation spécifique à l'installation : https://pillow.readthedocs.io/en/stable/installation.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhugoschtr%2Fgallicality","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhugoschtr%2Fgallicality","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhugoschtr%2Fgallicality/lists"}