The babelio_db plugin

This plugin is built on the foundation laid by VdF. I wrote it for my own use to address what I perceive as limitations in the VdF plugin.

Perceived limitations in the original plugin, solved in my version. 

  1.  There is no reference (id) to retrieve the URL, nor is there a way to add an id from the url due to the lack of the following two routines:
    1. get_book_url : used by calibre to convert the identifier to a URL...
    2. id_from_url : takes an URL and extracts the identifier details...
  2. As soon as the Babelio content is uploaded, ALL the information is translated into utf8, ALL the outputs (logs...) and inputs (what is read on the site...) are in utf8... The multiple conversions make the code confusing to me
  3. Only one match even if two books match the search (when Calibre accepts multiple matches per site)
  4. The compatibility with python 2.x seems to me obsolete and disturbing. (You may read that I don't know python 2.x ;-) )
  5. Identify() should be invoked with NAME_ID then ISBN and if that doesn't work with title + author, ..., to end with title only.
  6. A config.py is OK but I prefer to use the built-in config, quite sufficient, and much more beautiful (in my opinion :-) ).
  7. Babelio gives the name of the series and its volume number (order in the series), I want to try to introduce it (and check that all my series correspond to it...)
  8. I much prefer comments in HTML and beautifulsoup (used in calibre, by the way): it keeps the "structure", especially the line breaks.
  9. I hate this search-and-substitute language (regular expression) which I hardly understand at all... well, just a little bit!  

User's guide

It should be noted that the full potential of this source plugin can only be obtained if the plugin is used alone. Indeed, used with other plugin(s), calibre looks for a match on title, authors and IDs... Calibre then merges all matching results to give a maximum of relevant information.

This is how I use it

If, as I prefer, you want information from babelio and babelio only, you should select babelio alone and keep more than one entry per source (per plugin). The usefulness is apparent for searches such as "henri verne Les dents du tigre 2" which returns "Les dents du tigre (2/2)" first followed by "Les dents du tigre (1/2)", or a search on "Paulo Coelho Guerrier de Lumière" which returns four different books.

Once the babelio information has been uploaded, I augment it by uploading from all plugins only the labels and cover images (for example). I could also load the notes in order to weight the ones given by babelio, etc...

select more than one entry per source
metadata general setup

Of course, it can be used differently...

So I wrote a configuration for this plugin.

babelio source configuration
babelio_db setup

I kept the function to avoid searching for a cover. In fact, because the cover image is sometimes on amazon, and because amazon isn't really responsive to non-human access, this feature turns out in some cases to be really useful. You go from waiting ten seconds or so to a handful of seconds. It's very appreciable when dealing with a series of titles.

I've implemented several levels of verbosity, by default level 3 will show the progress in the log. In particular, the plugin may not provide the editor, in which case a quick glance at the log will show whether it's a plugin bug or a missing babelio...
In the event of a bug, raising the verbosity to 15 will give me a better idea of where the problem lies.

An important use of the template for me is to create a catalogue. In this catalogue, I like to be able to follow a link to the babelio site. This allows me to get more information about the author, his bibliography, the readers' opinions... So I create a reference that finds its place in the comments, and I separate it from the summary coming from the site by a title.
In the same vein, one can add the note associated with the book under its title.

Last but not least, Babelio.com presents a compilation of the various tags suggested by readers. They are sorted by genre, theme, link and period. Font size is proportional to relevance. You can have several tags with the same relevance, but the greatest relevance of each tag type is not the maximum font size. I've chosen to select the number of levels for each label type, starting with the most important. Thus, entering 0 deletes the labels associated with that type, while entering 2 may result in 1 or more than 2 labels, depending on the number of labels below the 2 highest levels.

In the event of a bug

The best way to report a problem is to push the verbosity to the maximum (15), reproduce the problem and copy the log. A short description of the bug with the log will greatly help to understand and fix both the plugin and its documentation. Indeed, reporting that the title is not decoded correctly when multiple plugins are selected is probably the normal operation of calibre, so it should be documented.