Register Guidelines E-Books Today's Posts Search

Go Back   MobileRead Forums > Non-English Discussions > Forum Français > Software

Notices

Reply
 
Thread Tools Search this Thread
Old 04-04-2022, 12:20 PM   #1
lrpirlet
Connoisseur
lrpirlet began at the beginning.
 
Posts: 93
Karma: 40
Join Date: Mar 2020
Location: Belgium (sorry, I am from the Walloon side of the country and I speak french only)
Device: PW3, Kobo Libra H2O
noosfere, deux extensions complémentaires

Parce que je suis un lecteur de science fiction, je me suis tourné vers noosfere, un site extrêmement riche consacré aux publications à propos de l’imaginaire.

noosfere vaut le detour.

Pour apprendre python, j'ai décidé de creer une extension de Calibre pour télécharger les métadonnées à partir de noosfere: noosfere DB... Ok, c'est dans l'autre langue... J'ai ecris un court mode d'emploi.
Spoiler:
Important:
la présence d'un nsfr_id valide exclu tout autre choix et va directement a la page correspondante du volume. C'est LE moyen de contourner tous les choix en indiquant
comme id : nsfr_id:vl$xxx où xxx est le numéro, positif ou négatif, de la page du volume désiré.
la présence d'un isbn valide, en l'absence d'un nsfr_id, va directement a la page correspondante du livre, les choix posés seront pris en considération.
l'absence de nsfr_id valide ou d'un isbn valide implique que, et l'auteur et le titre sont, quasi, correct.
L'auteur doit être de la forme: "prénom nom" ou bien "nom, prénom" (noter la virgule dans ce dernier cas)...
Un maximum est fait pour tenir compte d'une faute légère dans l'orthographe de l'auteur tant que celle du titre.
En particulier, la casse et/ou les accents ne sont pas pris en compte.

pour utiliser ce plugin efficacement:
sélectionner le ou les ouvrages
éditer les métadonnées (clic droit)
Dans cette fenêtre activer l'icône "tournevis et clé plate" à coté de télécharger les métadonnées
Dans la fenêtre de configuration
décocher toutes les sources sauf noosfere DB (pas nécessaire mais utile surtout au début)
clic de sélection sur noosfere DB
activer "configurer la source sélectionnée"
champs de métadonnées à télécharger: cocher tout
Ajoute collection et son numéro d'ordre au champ éditeur: (voir LIS-MOI editeur_collection_seriel-code)
verbosité du journal de 0 à 7 : 7 minimum pour créer un rapport en cas de mauvais fonctionnement
Priorité de tri: le plus ancien ou le plus recent parmi les volumes selectionnés
ISBN present si possible: oui ou non
choix du volume pondéré: oui ou non
Impose un éditeur: l'algorithme de choix se fait uniquement avec cet éditeur (correspondance exacte),
avec l'editeur prépondérant (texte sans correspondance),
ou sans tenir compte de l'éditeur (pas de texte).
Ajoute 'Prix obtenus' et 'Prix obtenus par des textes au sommaire: cocher pour ajouter cette information
Ajoute Cité dans les pages thématiques suivantes: cocher pour ajouter cette information
Ajoute Cité dans les listes thématiques des oeuvres suivantes: cocher pour ajouter cette information
Ajoute Cité dans les Conseils de lecture: cocher pour ajouter cette information
Ajoute Adaptations (cinéma, télévision, BD, théâtre, radio, jeu vidéo...): cocher pour ajouter cette information

Note
"Restaurer les valeurs par défaut" est inactif et dépend de calibre plutôt que du plugin

Enregistrer ou Annuler pour revenir a la fenêtre précédente
Annuler ou Appliquer pour sortir de la configuration et revenir à la fenêtre de téléchargement
Télécharger les métadonnées
cliquer "ok" (même si les données, ou la couverture, correspondent à un autre volume...)
On sort du plugin...

vous êtes au premier niveau de calibre, les liens peuvent être suivis dans les "détails du livre" (a choisir par "mise en page")
Si un autre volume est désiré, cliquer sur "Autre édition" pour voir tous les volumes, sur un lien sous "autres édition" pour une édition particulière
suivre les liens de noosfere jusqu'à l'édition désirée, repérer dans l'adresse de la page et copier le nombre (positif ou négatif) associé avec numlivre.
sélectionner l'ouvrage dont on cherche les métadonnées, "Editer les métadonnées(un livre à la fois)".
Dans le champ Ids, remplacer nsfr_id:<n'importe quoi> par nsfr_id:vl$<coller ici le nombre copié>
exemple: nsfr_id:bk$1617$vl$2146558555 devient nsfr_id:vl$2146597675
"télécharger les métadonnées"

Choix du volume:
le choix du volume est déterminé par une série de facteurs... la "priorité de tri" influence le choix mais ne le détermine pas.
"impose un éditeur" limite l'algorithme de choix a l'éditeur pour autant que l'éditeur imposé soit une correspondance exacte,
majuscule, minuscule et accents y compris. Je suggère un couper-coller.

extrait des sources, une explication de l'algorithme de choix du volume.
def ret_top_vol_indx(self, url, book_title):
# cette fonction reçoit l'URL du livre qui contient plusieurs volumes du même auteur,
# dont certains ont le même ISBN et généralement le même titres.
#
# Ces volumes diffèrent par l'éditeur, la date d'édition ou de réédition, l'image de couverture, le 4me de couverture, la critique.
# MON choix se base sur un système de points sur les indications du site
# résumé présent: r 1pt
# critique présente: c 1pt # semble pas trop correct car CS n'existe pas même si, quand
# critique de la série cs 1pt # une critique existe, elle est parfois reprise pour tous les volumes
# sommaire des nouvelles présentes: s 1pt
# information vérifiée v 2pt
# titre identique t 5pt
# image présente p 1pt
# isbn présent i 50pt fonction de with_isbn
# isbn présent et identique a calibre 100pt fonction de with_isbn
# le nombre de point sera augmenté de telle manière a choisir le volume chez l'éditeur le plus représenté... MON choix
# en cas d'égalité, le plus ancien reçoit la préférence sauf préférence
#


La seconde extension permet au travers d'un web browser de selectionner l'édition et la couverture associée (plus besoin de regler a chaque coup les options de noosfere DB). Il permet aussi de créer deux colones pour contenir la collection de l'éditeur dans l'une et le numero d'ordre dans l'autre, enfin il permet de distribuer les informations surchargées de noosfere DB.

Voir noosfere_util

présentation (en fait, l'aide qui vient avec l'extension):
Spoiler:
Le plugin noosfere_util

Ce plugin devrait compléter cal-noosfere.

Problèmes dans noosfere :
  1. Cal-noosfere ne peut pas effacer un nouveau champ de métadonnées vide.
    Exemple : si un téléchargement de la source de métadonnées, venant de n'importe où, a mis la série à "quelque chose", et que la source de métadonnées noosfere ne trouve AUCUNE série, alors calibre n'effacera PAS le champ série.
  2. Un livre peut exister sous plusieurs volumes.
    Chacun d'eux peut différer en raison d'une réédition par le même éditeur ou par un éditeur différent. Il peut même faire partie d'une ou plusieurs anthologies avec éventuellement un auteur et/ou un titre et/ou un ISBN différent. J'ai fait un choix mais ce n'est peut-être PAS le meilleur. La solution est d'aller manuellement sur la page du livre et de choisir le meilleur volume en définissant le nsfr_id, et en redémarrant le plugin source de métadonnées cal-noosfere.
  3. Cal-noosfere ne permet pas de modifier la colonne personnalisée.
    Cependant, il permet de surcharger le champ éditeur avec la collection et l'index de la collection. Il devient alors nécessaire de diviser ces informations en colonnes personnalisées.

Ainsi, sélectionnez dans calibre quelques livres pertinents dont le volume (l'édition) affiché est incorrect.
  • Utilisez noosfere_util pour effacer leurs métadonnées, à l'exception du titre, des auteurs et des identifiants tels que l'ISBN, et pour ajouter l'identifiant nsfr_id du volume de votre choix.
  • Exécutez une mise à jour des métadonnées pour alimenter calibre avec les informations associées à votre choix.
  • Sélectionnez les livres pertinents dont le champ éditeur est surchargé. Utilisez noosfere_util pour configurer l'éditeur et la collection d'éditeurs personnalisés et la série de collections personnalisées.

Mode d'emploi

Efface les métadonnées en surplus
  • Sélectionnez un ou une série de livres dans calibre.
  • Appelez noosfere_util en actionnant l'icône.
  • Dans le menu déroulant activez "Efface les métadonnées en surplus".

Les lignes sélectionnées ont perdu toutes les informations relatives aux champs Editeur, Série, Langues, date de modification, nsfr_id et les champs personnalisés contenant la collection définie par l'éditeur ainsi que son numéro de série (#collection et #coll_srl tels que définis par défaut). Notez que cette étape est inutile si l’intention est d’utiliser le "navigateur Web pour le choix du volume"

Navigateur Web pour le choix du volume
  • Sélectionnez un ou une série de livres dans calibre.
  • Appelez noosfere_util en actionnant l'icône.
  • Dans le menu déroulant activez "Navigateur Web pour le choix du volume"
  • Un navigateur web apparait et présente la page de recherche avancée de noosfere
  • A l'aide du navigateur et des boutons dédiés, naviguer vers l'édition du titre désiré
  • Sortir du navigateur en utilisant le bouton bleu en haut à gauche pour enregistrer le choix
  • Dans calibre, toutes les lignes traitées sont sélectionnée pour téléchargement des métadonnées

Les lignes sélectionnées sont marquées et sélectionnées. Il suffit de lancer le téléchargement des données pour obtenir les métadonnées correspondantes au choix. En fait, les lignes sélectionnées ont perdu toutes les informations relatives aux champs Editeur, Série, Langues, date de modification, ISBN et les champs personnalisés contenant la collection définie par l'éditeur ainsi que son numéro de série. (#collection et #coll_srl tels que définis chez moi). Le nsfr_id est défini, il sert de guide au choix.

Je me sers de ce navigateur ainsi:
J’active l'un des ISBN, Auteurs ou titre.
J'active "Envoyer". J'observe la zone de titre...
Quand la page correspondante est affichée, je recherche, si besoin, le titre ou l'auteur...
Je navigue vers l'édition que je veux.
Je valide par la flèche de sortie si je suis content,
ou bien je sors par esc pour annuler le changement sur cette ligne,
ou encore je ferme la fenêtre par le signe X pour laisser tomber cette ligne et toutes les autres suivantes sélectionnées.
Dans calibre, je démarre le téléchargement des métadonnées, je sélectionne noosfere DB comme seule source de métadonnées et je lance le processus...


Note:
  • on présume que noosfere DB est installé
  • le navigateur est programmé pour être au-dessus de calibre, l'accès à celui-ci n'est possible qu'après fermeture de toutes les instances de ce navigateur. Pour sortir en vitesse et annuler toutes les lignes suivantes, agir sur le bouton x de la fenêtre.
  • Chaque bouton et chaque boite est commenté dans des bulles ou dans la zone de titre (observez celui-ci quand on charge une page), des indications peuvent apparaitre dans la zone d'état en bas de page.

Navigateur web, un instantané...
<ici image du browser>
  • Titre et zone de contrôle de la fenêtre :
    • titre : contient la dénomination de la page web, ou bien montre le progrès du chargement de la page
    • Signe - : réduit la fenêtre (attention, ne donne PAS accès à calibre)
    • Signe carré : agrandit la fenêtre
    • Signe X : stoppe le traitement de la ligne et de toutes les lignes suivantes
  • Barre de navigation:
    • Flèche à gauche : recule à la page précédente (si elle existe)
    • Flèche à droite: avance à la page suivante (si elle existe)
    • Flèches circulaires : recharge la page
    • Maison : va à la page de recherche avancée de noosfere
    • X : stoppe le chargement
    • Loupe : invoque le recherche (ctrl-f est fonctionnel)
    • Boite de l'adresse, éditable, on peut aller n'importe où... (attention, sécurité non garantie, ce web browser n'a AUCUNE SECURITE INTEGREE!!!)
    • Esc : stoppe le traitement de la ligne et passe à la ligne suivante
    • Flèche de sortie : enregistre le nsfr_id et passe à la ligne suivante
  • Partie centrale : contenu de la page dont l'url est dans la boite de l'adresse... ici la page de recherche avancée de noosfere
    • Zone de trois barres d'information:
    • Bouton ISBN : copie le contenu de la boite ISBN dans la boite de recherche de noosfere, coche la case "Livres", tant que l'adresse de la page est https://www.noosfere.org/livres/noosearch.asp
    • Boite ISBN : contient le ISBN tel que défini dans calibre avant traitement
    • bouton Auteurs : copie le contenu de la boite Auteurs dans la boite de recherche de noosfere, coche la case "Auteurs", tant que l'adresse de la page est https://www.noosfere.org/livres/noosearch.asp
    • Boite Auteurs : contient le(s) Auteur(s) tel(s) que défini(s) dans calibre avant traitement
    • Bouton Titre : copie le contenu de la boite Titre dans la boite de recherche de noosfere, coche la case "Livres", tant que l'adresse de la page est https://www.noosfere.org/livres/noosearch.asp
    • Boite Titre : contient le Titre tel que défini dans calibre avant traitement
  • Barre de recherche, activée par la loupe ou <ctrl>f:
    • boite qui contient le texte à rechercher (exemple: je copie le titre et le colle ici). La recherche démarre quand le texte change
    • Suivant : recherche une occurrence suivante
    • Précédent : recherche une occurrence précédente
    • Terminé : efface la boite de recherche et ferme la barre de recherche
  • zone de statut :
    • Affiche un message si aucune occurrence n'existe.
    • Affiche une barre de progrès et un pourcentage pour monitorer le download (attention, l’indication dans le titre est plus correct!... Non je ne peux pas 'fixer ça')

Distribue l'information (qui surcharge le champ) éditeur

Dans la mesure où le plugin noosfere DB aura été utilisé pour télécharger les métadonnées avec l'option de surcharger le champ éditeur, les lignes sélectionnées seront traitées. En résultat, le champ éditeur contiendra l'éditeur, le champ collection de l'éditeur (par défaut collection) sera rempli et le champ du code de série dans la collection de l'éditeur (par défaut coll_srl) contiendra sa valeur.

Notez que si la collection et/ou le coll_srl n'existe pas dans le champ éditeur, la procédure devrait fonctionner. C'est la procédure qui dans noosfere DB est manuelle.

Personnalise l'extension

La seule fonction de "Personnalise l'extension" est de créer et/ou de choisr une colonne qui convient...

Au premier emploi de ce noosfere_util, il faudra probablement créer 2 colonnes et choisir les colonnes. Cette opération implique un redémarrage de calibre.

En cas de bug

noosfere_util crée des fichiers de log en mode debug, et laisse trainer deux fichiers dans le directory temporaire. Il est important de joindre ces informations à tout rapport d'erreur.

Lancer calibre avec calibre-debug -g dans un terminal. Reproduire le problème, copier coller le contenu du terminal dans un fichier texte... avant de relancer calibre, copier tout les fichiers du directory temporaire (linux : /tmp; Windows : %temp%) qui commencent par nsfr_utl. Soumettre ces 3 fichiers avec une description du problème.

Astuces

Ne pas utiliser noosfere DB en même temps que d'autres source de métadonnées pour un bon résultat final. En pratique, le résultat peut être différent de noosfere. En effet, calibre peut utiliser plusieurs sources de métadonnées pour "un meilleur résultat".

Personnellement, je commence par rechercher un titre avec un maximum de sources de métadonnée. Ceci me donne plusieurs ID, des notes d'appréciation, des étiquettes variées, mais aussi des séries inventées de toutes pièces, ou des titres de livre qui sont en fait une série (exemple: Celle qui sait de Laurence Suhner -isbn:9791036000911, amazon_fr:B096HPZLTQ, google:hIzSzgEACAAJ, nsfr_id:vl$2146624523- voir Celle qui sait | Éditions L'Atalante (l-atalante.com)). En fait noosfere est correct.

Ensuite, avec noosfere_util, j'efface les métadonnées en surplus, je sélectionne l'édition par le navigateur web pour le choix du volume qui me fixe le nsfr_id correspondant, je télécharge les métadonnées avec noosfere DB seul, puis je distribue les informations surchargées dans le champ éditeur...

Enfin, je peux rechercher une meilleur image de couverture en utilisant toute les sources de couvertures... (je ne télécharge QUE les couvertures)


Ce message pour obtenir l'un ou l'autre retour d'expérience.

Last edited by lrpirlet; 04-04-2022 at 03:28 PM.
lrpirlet is offline   Reply With Quote
Reply


Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
[Metadata Source Plugin] noosfere DB lrpirlet Plugins 12 08-20-2022 04:14 PM
Which Writer would you rather be Part Deux? kennyc Writers' Corner 4 07-28-2011 02:46 AM
Hardware Ecran deux-en-un : LCD & E-ink Grimaud Forum Français 18 05-04-2010 06:57 AM
Deux gratuits sur Publie.net Bellonius E-Books 1 10-26-2008 10:27 PM


All times are GMT -4. The time now is 09:57 AM.


MobileRead.com is a privately owned, operated and funded community.