![]() |
#1 |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 78
Karma: 26914
Join Date: Nov 2020
Location: Perth, Western Australia
Device: Apple Books & Kobo Libra H20
|
[GUI Plugin] LibraryThing Match
LibraryThing is a social cataloging web application for storing and sharing book catalogs and various types of book metadata. It is used by authors, individuals, libraries, and publishers.
LibraryThing Match is a calibre plug-in for comparing your calibre e-book list with your LibraryThing catalog. Main Features:
Special Notes:
Installation Steps:
Paypal Donations:
Version History: Spoiler:
Last edited by Bradles; 05-24-2024 at 11:36 PM. Reason: Released version 0.2.5 |
![]() |
![]() |
![]() |
#2 |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 78
Karma: 26914
Join Date: Nov 2020
Location: Perth, Western Australia
Device: Apple Books & Kobo Libra H20
|
calibre 6 / Qt6 test version
This is a test version of the LibraryThing Match plugin for use with calibre 6 when it is released. It will also work with current versions of calibre from 5.0 upwards.
See the calibre 6 / Qt6 thread for details: https://www.mobileread.com/forums/sh...d.php?t=344064 This version of the plugin can be installed manually for testing purposes. Report any issues at the bottom of this thread. Last edited by Bradles; 01-07-2022 at 01:06 AM. Reason: calibre 6 / Qt6 test version, works with calibre 5 too |
![]() |
![]() |
Advert | |
|
![]() |
#3 |
Member
![]() Posts: 15
Karma: 10
Join Date: Nov 2009
Device: Kindle Voyage/Galaxy Note Pro 12.2/Galaxy S20
|
I am very excited about this plugin. LT deserves far more love than it seems to get!
For those of us who use Authors names as FN LN (I know - scandalous!) the plugin will try and match calibre first names to LF last names e.g. Adam-Troy Castro is paired up with John Joseph Adams. Are there any tricks or possible future configuration for this? I'm assuming I would just go back and forth in the Preferences>>Advanced>>Tweaks and switch between fn ln and ln, fn for Author Sort. If anyone has a better or more elegant method I'd love some ideas! |
![]() |
![]() |
![]() |
#4 | |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 78
Karma: 26914
Join Date: Nov 2020
Location: Perth, Western Australia
Device: Apple Books & Kobo Libra H20
|
Quote:
![]() I would not expect a very high probability match in that situation. The algorithm splits each string into "tokens" (i.e. words), sorts them, then compares the shortest combination. It includes the book title, so only if the titles are very similar as well would you get a high probability match. You can expect quite a few low probability matches, e.g. 50% and under, just from these random word matches. The LT API also returns author first last, so it would be fairly easy to add that as a LTMatch configuration option. Let me know if you are seeing anything different and I'll look into it further. |
|
![]() |
![]() |
![]() |
#5 | |||||||
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 78
Karma: 26914
Join Date: Nov 2020
Location: Perth, Western Australia
Device: Apple Books & Kobo Libra H20
|
Responding to a post in the "LTMatch Beta" thread (which is now closed).
Quote:
Quote:
Quote:
Many LT users use tags to identify ebooks, or newly added books, and searching by tags is fast. In fact, I also use tags to identify the source of the ebook, e.g. Kindle, Google, Apple Books. This makes for faster searching and the plugin only downloads what it needs. Quote:
Failing to identify the best match is a concern, but this sometimes happens with series, where the series name is part of the book title. If you share the names of the books concerned (by DM if you like) I can have a look. Quote:
There are a number of ways to filter your calibre list to help though, e.g. Authors whose surname starts with A: Code:
author_sort:~^A Quote:
Quote:
![]() You may be interested to know, I'm working on a LibraryThing Metadata plugin too. It's like the Amazon, Google, Goodreads, etc plugins, except it downloads your metadata and covers from LT. (If you have a matching book.) It builds on the LTMatch plugin, by using the librarything_id to go directly to your book. It's not quite ready for testing yet, but I'll surely post something in this thread when it is. Last edited by Bradles; 03-18-2021 at 11:32 PM. Reason: Added note re: source of JJ's comments |
|||||||
![]() |
![]() |
Advert | |
|
![]() |
#6 |
Member
![]() Posts: 11
Karma: 10
Join Date: Apr 2014
Device: Moto G Power (2020), various tablets
|
Second run
OK, I didn't understand about the matched books not being matched again... I'll try your suggestion of filtering calibre by author's initial.
I do use a collection to mark all my LT ebooks. I suppose I could Power Edit and tag them all with something, but that's a little annoying. Can LTMatch deal with wildcards in tags? I do have most of them marked with _import(date) - that is, the last batch I added are tagged _import210316. If I could tell LTMatch to look for _import*, that would work (for most of them, and I should tag the ones that don't have it anyway). OK, I tried to set LTMatch going with all the calibre authors that begin with A, and max results 12000 (to exceed my LT library). I got "Can't connect to LibraryThing due to an error. This could be due to an incorrect username. See error details below." and when I clicked Show Details it said "timeout('The read operation timed out')" So I can't set it at my whole library. Hmm. OK, weird! I tried it with tag _import* and max results 6000 - I got the same error, but the details say "URLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:1123)'))" Sounds like that asterisk messed something up. I guess I'm stuck at the moment. I'll check back with you later - thanks! |
![]() |
![]() |
![]() |
#7 | |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 78
Karma: 26914
Join Date: Nov 2020
Location: Perth, Western Australia
Device: Apple Books & Kobo Libra H20
|
Quote:
Perhaps there is something going on at your end, i.e. proxy server, VPN or something? Could speed be an issue? My broadband is 30Mbits, so not particularly fast. Also, per your suggestion, I've added an "About" box, which includes a link to this thread. Not that it will do you much good, but some future user may benefit. An update with that and a couple of minor changes to be released in the next couple of days. Also also, you could try firing off a test query in your browser, using a URL of the form: Code:
https://www.librarything.com/api_getdata.php?userid=sample&showstructure=0&max=10&showCollections=1&showRatings=1&showTags=1&booksort=author,title&responseType=json Last edited by Bradles; 03-23-2021 at 05:04 AM. Reason: added test link |
|
![]() |
![]() |
![]() |
#8 |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 78
Karma: 26914
Join Date: Nov 2020
Location: Perth, Western Australia
Device: Apple Books & Kobo Libra H20
|
LibraryThing Match version 0.2.0 released. Updates:
|
![]() |
![]() |
![]() |
#9 |
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 746
Karma: 308700
Join Date: Sep 2017
Location: Argentina
Device: moon+ reader, kindle paperwhite
|
Enjoy !!!
|
![]() |
![]() |
![]() |
#10 |
Junior Member
![]() Posts: 2
Karma: 10
Join Date: Feb 2017
Device: Samsung Galaxy S6
|
calibre, version 5.14.0
ERROR: Install plugin failed: A problem occurred while installing this plugin. This plugin will now be uninstalled. Please post the error message in details below into the forum thread for this plugin and restart calibre. Traceback (most recent call last): File "calibre\gui2\dialogs\plugin_updater.py", line 709, in _install_clicked File "calibre\customize\ui.py", line 472, in add_plugin File "calibre\customize\ui.py", line 61, in load_plugin File "calibre\customize\zipplugin.py", line 293, in load File "importlib\__init__.py", line 127, in import_module File "<frozen importlib._bootstrap>", line 1014, in _gcd_import File "<frozen importlib._bootstrap>", line 991, in _find_and_load File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 671, in _load_unlocked File "calibre\customize\zipplugin.py", line 192, in exec_module File "calibre_plugins.fictiondb.__init__", line 11, in <module> ImportError: cannot import name 'quote' from 'urllib' (C:\Program Files (x86)\Calibre2\app\bin\python-lib.bypy.frozen\urllib\__init__.pyc) |
![]() |
![]() |
![]() |
#11 |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 78
Karma: 26914
Join Date: Nov 2020
Location: Perth, Western Australia
Device: Apple Books & Kobo Libra H20
|
This looks like a fictiondb issue, which has not been updated for python3 and therefore doesn't work with calibre 5+. See this thread for more:
https://www.mobileread.com/forums/sh...=171674&page=7 |
![]() |
![]() |
![]() |
#12 |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 78
Karma: 26914
Join Date: Nov 2020
Location: Perth, Western Australia
Device: Apple Books & Kobo Libra H20
|
LibraryThing Custom Columns
Here are a couple of custom columns I added that link to the LT website. (See attached images for configuration.)
LT Find: Direct link to your book on librarything.com, or search if it doesn't exist. Template Code:
program: id = select(field('identifiers'), 'ltid'); if id then strcat('<a href="https://www.librarything.com/work/book/', id , '">', field('title'), '</a>') else strcat('<a href="https://www.librarything.com/title/', field('title'), ' ', field('author'), '">', field('title'), '</a>') fi; LT Add: Direct link to your book on librarything.com, or an "add books" search using Title + Author. Template Code:
program: id = select(field('identifiers'), 'ltid'); if id then strcat('<a href="https://www.librarything.com/work/book/', id , '">', field('title'), '</a>') else strcat('<a href="https://www.librarything.com/addbooks?search=', field('title'), ' ', field('author'), '">', field('title'), '</a>') fi; |
![]() |
![]() |
![]() |
#13 |
Junior Member
![]() Posts: 2
Karma: 10
Join Date: Jan 2012
Device: iPhone
|
Hi;
I'm trying to set up this plugin (calibre v5.33.2, plugin v 0.2.0), and I'm getting a "Can't connect to LibraryThing due to an error" message. The Details panel reads "JSONDecodeError('Expecting value: line 1 column 1 (char 0)')". This only happens when I try to retrieve 20 or more books at a time; anything up to 19 works fine. Am I doing something wrong? |
![]() |
![]() |
![]() |
#14 |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 78
Karma: 26914
Join Date: Nov 2020
Location: Perth, Western Australia
Device: Apple Books & Kobo Libra H20
|
Hi mihrimah,
That error can occur if you have not specified "LibraryThing user" or "Max results" in the Customize LibraryThing Match" screen, which you can access from the "Configure..." button. Please ensure those values are filled in and try again. If you are still having problems you can message me. Just in case you like reading user manuals, there's a short one attached to the first post. Brad. PS: Sorry your first post had to be about an error with my plugin... |
![]() |
![]() |
![]() |
#15 |
Junior Member
![]() Posts: 2
Karma: 10
Join Date: Jan 2012
Device: iPhone
|
I've got those filled in; it only happens when "Max results" is 20 or above. I'll take some screenshots and message them to you.
|
![]() |
![]() |
![]() |
Tags |
calibre, librarything, ltmatch |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
[GUI Plugin] Save Virtual Libraries To Column (GUI) | chaley | Plugins | 14 | 04-04-2021 05:25 AM |
LibraryThing Match plugin - beta testers wanted | Bradles | Calibre | 19 | 03-19-2021 03:55 AM |
LibraryThing Match (calibre plugin) coming soon | Bradles | Plugins | 5 | 02-18-2021 06:05 AM |
LibraryThing metadata download plugin | rtype | Plugins | 30 | 09-08-2015 07:24 PM |
Librarything using Ctrl-D in GUI | bwk | Calibre | 24 | 04-03-2012 11:34 AM |