View Single Post
Old 08-14-2012, 12:29 PM   #3
jhowell ought to be getting tired of karma fortunes by now.jhowell ought to be getting tired of karma fortunes by now.jhowell ought to be getting tired of karma fortunes by now.jhowell ought to be getting tired of karma fortunes by now.jhowell ought to be getting tired of karma fortunes by now.jhowell ought to be getting tired of karma fortunes by now.jhowell ought to be getting tired of karma fortunes by now.jhowell ought to be getting tired of karma fortunes by now.jhowell ought to be getting tired of karma fortunes by now.jhowell ought to be getting tired of karma fortunes by now.jhowell ought to be getting tired of karma fortunes by now.
jhowell's Avatar
Posts: 3,378
Karma: 32493247
Join Date: Nov 2011
Location: Tampa Bay, Florida
Device: Oasis 2, Fire, iPad Air 2, Nexus 7
Plugin version history prior to version 2.0.0:


Version 1.43.0 - 02 Aug 2016

Fix error seen when searching Freading. (Fixes Server response error (missing "div id=all-results"))

3M Cloud Library is now known as Cloud Library. The internal identifier for Cloud Library links will remain '3m' for compatibility with previous plugin versions.

Use the folder "Overdrive Link Logs" in the plugin configuration directory instead of the current directory of the calibre process for storage of temporary debug files.

Version 1.42.0 - 13 Jul 2016

Handle domain name change of 3M Cloud Library from to

Allow search for recommendable books at new-style (2016) OverDrive sites.

Fix inability to sign in to the recently modified OCLS Freading site. (Fixes Failed to locate sign in form)

Fix error when checking current availability of Scribd books. (Fixes Exception (Missing Scribd.R.render(Scribd.R.Shared.React.LibraryButto n)))

Version 1.41.0 - 10 May 2016

Fix errors when searching new-style (2016) OverDrive sites. (HTTPError (Internal Server Error))

Fix search for recommendable books at legacy OverDrive sites, broken in version 1.37.0. Search for recommendable books is not currently available for new-style (2016) OverDrive sites.

Version 1.40.0 - 03 May 2016

Allow the overdrive_link_library_groups tweak to also be used for unlinking books from libraries.

Allow a double colon ('::') to mark an optional prefix for book titles.

Show Scribd books that require an account credit as having a one week wait when checking current availability.

Fix errors when searching Scribd resulting from a website change. (Server response error (missing "div class=page_header"))

Ignore empty book flag at Scribd instead of producing a warning. (Fixes Unknown book flag)

Fix error when an Amazon search finds a book with no title. (IndexError (list index out of range))

Version 1.39.0 - 01 Mar 2016

Fix failure to search OverDrive libraries whose host name ends with "". (Signing in to xxx: : HTTPError (Not Found))

Ignore any suffix contained in square brackets following an author name in the user's calibre library. (eg: John Smith [editor])

Version 1.38.0 - 22 Feb 2016

Fix error when searching OverDrive libraries. (Server response error (missing "span class=title-format-badge"))

Fix occasional error when searching Scribd resulting from a website change. (HTTPError (Gone))

Fix errors when searching Amazon resulting from a website change. (Server response error (missing "span id=productTitle"))

Handle design change at the Internet Archive website. (Fixes no books found when searching the 'read' collection at Open Library.)

Version 1.37.2 - 08 Feb 2016

Fix error when checking current availability of books at OverDrive libraries. (OverDriveLegacy instance has no attribute 'signed_in')

Version 1.37.1 - 05 Feb 2016

Fix error when searching OverDrive libraries. (AttributeError ('function' object has no attribute 'id'))

Version 1.37.0 - 05 Feb 2016

Support a major change to the OverDrive website design being rolled out to lending libraries in 2016. Most importantly for users of this plugin, the identifiers associated with books have changed, making links to book web pages partially incompatible with the old website design. Links previously created by searching will still function after a library migrates to the new website, but future searches will create different links and the old links will be removed. (In order for old link removal to occur you must select the option Unlink books if no longer found by search in the plugin configuration. Otherwise both old and new links will exist for the same book.)

Usually the library-id (website host name) of an OverDrive library will change when the library is migrated. The plugin detects host name redirection during search and notifies you by an error message that a configuration change is needed. After updating the configuration you should use the menu choice Check and repair book links to migrate existing book links to the new library-id. (The plugin checks for host names changed by adding or removing ".lib.", which is what OverDrive does typically. If the host name is changed in some other manner it will not be possible to migrate links and they will need to be re-established by performing new searches.)

The plugin detects and keeps track of the website type (old or new) for each lending library. This may sometime fail causing books links to work incorrectly. If this occurs a restart of calibre should correct the problem. Once all libraries have migrated to the new design the plugin will be updated to remove support for old websites and then this will no longer be an issue.

The process of signing in using the new website design has not yet been tested. If you experience a sign-in error then clear the card number field in the plugin configuration for that lending library to avoid the sign-in process.


Enhance the overdrive_link_library_groups tweak to also be used for checking the current availability of linked books.

Support additional non-ASCII characters in author names.

Ignore non-functional books at Scribd. (These books show a small number of pages, but cannot actually be read.)

Fix missing result when searching for a single book at Hoopla.

Fix occasional error when searching at 3M Cloud Library. (Fixes AttributeError ('int' object has no attribute 'read'))

Improve handling of request throttling by Amazon.

Remove support for the Amazon Product Advertising API. The Amazon web site will be used for searches instead.

Remove support for the Oyster service, which has been discontinued as of early 2016. Any left over links to Oyster books can be removed by using the Check and repair book links menu choice.

Version 1.36.0 - 19 Nov 2015

Add Audible as a provider. Only the US site ( is supported, the library-id must be set to "store", and the "Other/app/player" audiobook format must be enabled for searching.

Show links for purchasable books in the book details panel.

Add a configuration option to disable the job completion popup dialog. (Disable job completion popup dialogs) If set then all changes will be applied automatically without any notification upon search completion.

Handle minor design change at OverDrive websites. (Fixes Server response error (Cannot find pre-release available date).)

Fix bug in sign-in to OverDrive libraries that use external authentication and also those that require a branch ID when one was not entered in the configuration. (Fixes AttributeError (closeable_response instance has no attribute 'data'))

Fix error when a search finds a book at Amazon containing an author named "Various".

Handle occasional error from Amazon: We're sorry, an error has occurred. Please reload this page and try again.

Add a more explicit error message when checking book availability at Axis 360 for a book that is no longer in the library catalog.

Handle changes to Axis 360, now allowing access to e-books and audiobooks via a proprietary app.

Handle design change at the Scribd website. (Fixes HTTPError (Not Found).)

Fix parsing of publication date in Scribd search results.

Improve filtering of non-English results from Scribd when English language is configured for search.

Disable searches until calibre is restarted following a plugin update.

Version 1.35.0 - 05 Sep 2015

Groups of libraries can be configured for searching by setting the plugin tweak overdrive_link_library_groups. See the help section on Configuring Tweaks for more information.

Links in the ol_wait_weeks custom column can be filtered or sorted differently by setting the plugin tweak overdrive_link_wait_groups. See the help section on Configuring Tweaks for more information.

Detect when reaching the weekly limit on borrowing at Freading blocks the ability to borrow books and to detect pre-release books.

Change Scribd search to switch more quickly to searching by author name when too many results are returned using regular search.

Handle design change at the Scribd website. (Search returning book series as if they were individual books.)

Handle design change at the Hoopla website. (Fixes occasional Server response error (Expected offset 40, but found 0) when searching.)

Improve handling of malformed web pages during sign in to libraries. (Fixes occasional UnicodeDecodeError: 'utf8' codec can't decode byte)

Fix handling of books with multiple authors at Axis 360.

Handle design change at Amazon website that caused authors to be missed for some books.

Ignore additional non-author creators for Amazon books, such as illustrators and narrators.

Improve handling of discovered books when alternate author names are configured.

Handle design change at the Internet Archive website. (Fixes no books found when searching the 'read' collection at Open Library.)

Version 1.34.1 - 06 Jun 2015

Handle further change to the OverDrive website design. (Fixes Server response error (Unexpected hold info: Holds position: You are next in line for this title) and Server response error (missing "h6 id=waitlimit") when checking current availability of books.)

Version 1.34.0 - 03 Jun 2015

Handle change to the OverDrive website design. (Fixes Server response error (Unexpected hold info: Holds position:1 ahead of you) when checking current availability of books.)

If sign-in credentials are configured for a Hoopla library, but the library-id is not configured, the plugin will now detect and report the proper library-id instead of providing a list of libraries and making the user choose the correct one.

Providing credentials for 3M Cloud Library in the configuration will allow the plugin take into account the user's current position on the hold list for books, if any, when checking current availability. (Note: When not signed in, 3M occasionally shows books as being currently available to be borrowed when they are not.)

Fix occasional HTTPError (Internal Server Error) when checking for current book availability at 3M.

Version 1.33.0 - 19 May 2015

Allow searching for e-books and comics at Hoopla.

Handle change to Amazon website design. (Fixes Server response error (missing "h1 class=parseasinTitle").)

Avoid unnecessary sign ins to libraries when checking for current book availability.

Notify user if filtering of search results by Scribd is detected.

Version 1.32.0 - 12 May 2015

Add checking of the current availability of linked books to be borrowed and estimation of hold/wait time for books that are not immediately available. Results are provided via a custom column.

Handle change to Axis 360 website design. (Fixes Server response error (Cannot parse searchresultsummary: Titles that match).)

Improve book matching algorithm to take subtitles into account in more cases. This will reduce the number of instances where similarly named books are incorrectly linked.

Improve search for books at Oyster by doing additional searches using discovered author IDs.

Fix links for purchasable books at Oyster mistakenly shown as available to borrow.

Switch Scribd back to original search interface since that produces slightly better results.

Version 1.31.0 - 24 Apr 2015

Fix bug in Discover books by keyword. (Searches fail with UnboundLocalError (local variable 'odmatches' referenced before assignment).)

Handle the individual Enki web sites now used for each library. A library-id is now required in the configuration for Enki.

Version 1.30.0 - 20 Apr 2015

Handle 3M Cloud Library website redesign (version 2.0). (Fixes error: Exception (Missing mmmSearch).)

For links to books at 3M libraries to work properly, the plugin must determine whether each 3M library is using an old or new style website. This may cause a delay when links are displayed or accessed for the first time. The information is cached in memory, so if a library transitions to the new style, calibre will need to be restarted before book links to that library will function properly. This check will be eliminated in a future plugin version once all 3M libraries have been upgraded.

Handle a change in the web page layout of placeholders, representing a series of books at Scribd.

Change handling of Oyster to ignore books that are not available by subscription unless specifically configured to search for purchasable books at Oyster.

Improve detection of incomplete titles for some known book series.

Improve book discovery for configured author name equivalents.

Version 1.29.0 - 01 Apr 2015

Handle change to OverDrive causing errors during sign in. (Sign in form missing user/card field.)

Prevent occasional missed books when a search of OverDrive returns multiple pages of results.

Ignore Amazon ASINs that represent a bundle of books in a series instead of an individual book.

Parse series information from Amazon book pages and attempt to remove series suffix from book title. (Only done if the Amazon Product Advertising API is not configured.)

Increase delay before retrying when throttling of requests by Amazon or Scribd is detected.

Ignore zero-page e-books used by Scribd as a placeholder representing a series of books.

Correct occasional incorrect author order for multiple-author books at Scribd.

Use new "v2" search interface at Scribd and fall back to doing search by author if too many results are returned by the regular search.

Improve support for comic books at Scribd. Because of the way that comic books are indexed at the site, links may be created to individual volumes, placeholders representing a set of volumes, or both.

Search for recommendable books at Scribd is no longer supported due to changes in the Scribd search interface.

Cache information obtained from the Internet Archive for better performance when searching Open Library.

Retry on occasional "No JSON object could be decoded" errors reported by Open Library.

Add table of contents with clickable links to the beginning of the "help" dialog for easier navigation.

Version 1.28.0 - 22 Feb 2015

Support Kindle Unlimited at Set the library-id to ca-unlimited for Kindle Unlimited or ca-store for all purchasable Kindle e-books at

Fix continuous retries preventing job completion when a non-e-book result is mistakenly returned by an Amazon search.

Handle major change to OneClickdigital website. Books there are now referenced using ISBN instead of an arbitrary number, so links created by previous versions of the plugin will no longer function properly. Outdated links can be removed using the Check and repair book links menu choice.

Fix discovery of books by keyword, broken in the previous version of the plugin.

Version 1.27.0 - 05 Feb 2015

Allow filtering of the discovered book display using searches similar to the main calibre search interface.

Show up to 10 links in the book details panel. Previously only one link was displayed. The maximum number of links to display can be changed by setting the plugin tweak overdrive_link_max_book_panel_links to the desired number. (Requires calibre 2.19 or later.)

Allow new links that are found while searching for a non-primary author of a previously discovered book to be added to the book. (This may result in inconsistent availability being reported for multi-author books depending on which author is chosen for the search when the listed authors differ across book providers as happens for some anthologies.)

Added configuration option to allow the list of unchanged links to be omitted from the search results summary.

Added configuration of authors for whom discovery of new books is not allowed, even if Search for books by selected authors is used for that author's books.

Allow SSL certificate verification to be disabled within the plugin by setting the plugin tweak overdrive_link_disable_ssl_verification = True . Doing this will eliminate the SSL: CERTIFICATE_VERIFY_FAILED error which can occur with version 2.16 or newer of calibre. It is recommended the the underlying cause of the certificate problem be corrected as soon as possible since it may indicate a security problem with the user's system.

Improve search for authors who use one or more initials instead of a first name.

Improve search at Scribd for author names that contain an apostrophe.

Produce a specific error message when a query is redirected to the home page by Scribd. (This appears to be an occasional Scribd problem.)

Avoid caching book information for recommendable books at OverDrive since the listed formats are sometimes incorrect.

Improve parsing of Freading book pages to prevent occasional error: Server response error (missing "a class=authorName")

Handle EBSCOhost web site change in search results.

Version 1.26.0 - 02 Jan 2015

Add Project Gutenberg as an e-book provider. The plugin menu choice, Build index for Project Gutenberg, is used to download a catalog of books and create an index for subsequent searches.

Handle a recent change to the Open Library search API that caused searches to fail.

Version 1.25.0 - 23 Dec 2014

Added search for Open Library books that can be read online or downloaded without borrowing. (Public domain books from Internet Archive.) Configure a library with a provider of Open Library and a library-id of read.

Allow configuration of authors to be excluded from search, even if they are co-authors with desired authors. Enter each name in curly braces as a separate line in the configuration under Author name variants. e.g.: {SparkNotes}

Do not remove invalid library configuration data. Instead keep it, but prevent searches until it is corrected.

Handle Scribd books that are unavailable due to geographic restrictions.

Fix missing or incorrect edition year on titles of some annual short story collections on OverDrive.

Exclude undesired content types (e-book or audiobook) during searches at 3M to improve performance.

Fix links of discovered books that become unavailable not always being removed.

Fix occasional "KeyError" at job completion following a search of Amazon.

Report library validation errors received from OneClickdigital.

Handle Amazon Kindle e-books whose web page shows an "unavailable" warning message. (Note: The optional Amazon Product Advertising API does not indicate the unavailable status of books.)

Fix some books mistakenly being reported as available from Open Library when they are not.

Version 1.24.0 - 26 Nov 2014

Handle format name changes at OverDrive that were causing searches to fail. (Elimination of the "Adobe" prefix and addition of library-specific prefixes in some cases.)

Handle Scribd books that go directly to the reading page, without showing the book details. (This happens for some graphic novels.)

Report a warning if a search to discover books by an author detects new links for an existing calibre book by the author, not selected when the search was started. (If you want the links to be added, redo the search with that book selected.)

Detect OverDrive web pages with incorrect HTML (unterminated CDATA sections) and allow them to be parsed properly.

Log more details during search.

Show progress bar if queuing multiple jobs causes a delay.

Small performance improvement in handling large numbers of discovered books.

Version 1.23.1 - 08 Nov 2014

Fix narrator sometimes listed as author for audiobooks at Scribd.

Fix occasional errors while searching due to new default filtering of books containing adult content by Amazon. (These books will not be filtered in plugin search results.)

Version 1.23.0 - 07 Nov 2014

Support searching for audiobooks at Scribd.

Display the search results summary before the detailed job completion log when "View log" is selected in the search completion popup. (The "View log" dialog box can be resized to be more readable than the small search completion pop-up.)

To reduce the size of the search completion popup, the search result summary will no longer be shown by default. The "Show details" button can be used to display the summary. The previous behavior can be restored by selecting "Show result summary in popup" in the plugin configuration.

Shorten the label on the search completion pop-up button from "Yes (without discovered)" to "Non-* only".

Fix search by keyword results being improperly filtered for Scribd and Oyster.

Allow the plugin to be added to the device toolbar.

Version 1.22.1 - 28 Oct 2014

Support additional changes at Amazon that were causing some searches to fail.

Version 1.22.0 - 27 Oct 2014

Add support for e-book lending service Oyster. (Results may be incomplete for some authors due to limitations in the maximum number of results returned by Oyster web search.)

Separate the contents of the search completion summary with blank lines for better visibility in calibre 2.7 and later. (The narrow pop-up often causes individual lines of results to be wrapped.)

Support recent changes at Amazon that were causing some searches to fail.

Show the plugin icon in the search completion pop-up. (calibre 2.7 and later)

Eliminate warning messages for incorrect website behaviors that are known to occur frequently.

Prevent an author name from appearing multiple times for the same book.

Version 1.21.0 - 22 Oct 2014

Support recent changes at Freading that were causing searches to fail.

Add compatibility with completion dialog changes expected in calibre 2.7. With that calibre version it will no longer be possible to change the size or position of the completion dialog. (calibre versions prior to 1.17 are no longer supported.)

Retry OverDrive sign in if URLError Name or service not known occurs during form submission.

Log when searching is skipped because a provider supports none of the configured book formats.

Eliminate logging of library card number during OverDrive sign in.

Version 1.20.0 - 09 Oct 2014

Handle sign in to OverDrive libraries that use external authentication, such as WILBOR (West/Central Iowa Libraries Building Online).

Add pacing of Scribd queries to reduce the chance of being throttled. Add a long delay between queries when throttling is detected.

For Scribd report changes in the number of search results for different pages of the same result set as a warning instead of an error since it happens frequently. (Scribd search results may be incomplete.)

Version 1.19.0 - 01 Oct 2014

Allow searching for purchasable e-books supporting "Whispersync for Voice" at Amazon. (Use library-id

Show all searched books for which no results were found in the "UNCHANGED LINKS" section of the search summary report.

Show configuration errors in red below the table of libraries when editing the library configuration.

Change the search algorithm for Scribd to provide more complete results. This will increase search time in some cases.

Provide corrections for a few books that have known bad metadata at various library sites.

Fix bug that caused Scribd books cached by older plugin releases to be missed by searches.

Fix some cases of links not being removed for discovered books that later become unavailable.

Version 1.18.0 - 24 Sep 2014

Allow searching Kindle Unlimited at Amazon UK.

Version 1.17.3 - 24 Sep 2014

Bug fixes: Fixed incorrect reporting of some previously discovered books with multiple authors as being newly discovered. Treat Scribd book samples as unavailable books. Fixed searching for both e-books and audiobooks in same search at 3M. Escape html in job log.

Version 1.17.2 - 21 Aug 2014

EBSCOhost search debugging.

Version 1.17.1 - 20 Aug 2014

EBSCOhost login debugging.

Version 1.17.0 - 20 Aug 2014

Allow discovery of books based on multiple authors of selected books (instead of just the first author of each book) when "Max authors to search per book" is set greater than one.

Sort e-book links before audiobook links in search results and discovered book table.

Handle EBSCOhost access via a proxy URL.

Minor bug fixes and internal improvements.

Version 1.16.0 - 26 July 2014

Add Kindle Unlimited with Narration as a searchable collection at Amazon. To use add a library with the provider of Amazon and library-id of kuwn.

Prevent searching for books when a search for the same book is already in progress.

Fix bug: When the "Maximum authors per search job" configuration option was at its default value of 0 (no splitting), each author's books was split into an individual search job. For anyone who likes that behavior, it can be achieved by setting the option to 1 instead of 0.

Fix bug where search results from one job could be repeated in another job.

Version 1.15.2 - 24 July 2014

Fix support for Freading, broken by recent changes made at the Freading website.

Version 1.15.1 - 23 July 2014

Fix bug causing Kindle Unlimited searches to not return correct results.

Version 1.15.0 - 23 July 2014

Changed both Amazon and Open Library to require the collection to be searched to be set as the library-id in the plugin configuration. For libraries configured using a previous release of the plugin, prime will be assumed for Amazon and inlibrary will be assumed for Open Library. Update your library configuration if something else is desired.

Added a menu choice, Check and repair book links, which will check the link identifiers for books in the calibre library and discovered books for problems. Any incorrect links will be listed with the option to correct them.

Users of previous versions of this plugin should use Check and repair book links prior to doing any new searches in order to migrate Amazon and Open Library links to be compatible with this plugin version.

Add support for Amazon Kindle Unlimited. (US only.)

Added provider Enki Library.

Fix support for Amazon Kindle Owner's Lending Library (US), which was broken by web site changes made by Amazon.

Remove the configuration option to search for purchasable books. This is replaced by the ability to configure the US Amazon store as a searchable "library".

Add a cache of library books details for faster results when searches for the same books are repeated from time to time.

Treat a failure to get a consistent set of results from Amazon as a warning, instead of an error, since this occurs frequently.

Use regular expression search for Select previously linked books in cases where using the default, sub-string, search method could result in incorrect books being selected.

Minor bug fixes.

Version 1.14.0 - 11 July 2014

Moved to the 'new' calibre database API for better performance. (Requires calibre 1.0 or later.)

Add support for PyQt5 as required for the upcoming calibre 2.0.

Fix bug causing recommendable links to not be removed when a book becomes available at a library.

Retry sign in to an OverDrive library when it fails due to an authentication server problem.

Added plugin tweak "overdrive_link_ignore_login_failure = True", which will cause searches to be performed even if sign in to a library fails.

List links to e-books before audiobooks in plugin menu.

Version 1.13.1 - 08 July 2014

Fix "TypeError: lending_library_search_job() got an unexpected keyword argument 'log'" when not configured to allow multiple search jobs to run simultaneously.

Version 1.13.0 - 08 July 2014

Added providers EBSCOhost, Hoopla and Scribd.

Allow non-US domains for OneClickdigital.

Preliminary support for audiobooks at 3M Cloud Library. (They are expected to become available in August 2014.)

Better support for multiple author books, such as collaborations and anthologies, with a configuration option to control how many of a calibre book's authors are used for searching.

Search by title at Freading for books with multiple authors since Freading doesn't always list authors for those books.

Improve book matching to handle the case of a series name being used as a prefix to book titles. (e.g.: Worldwar: In the Balance and Worldwar: Tilting the Balance)

Add more choices of searchable book format. When searches are done for only e-book or only audiobook formats then pre-existing links for the other type will no longer be removed.

Support the Amazon Product Advertising API for faster searches.

Include a count of warnings in the search completion dialog and add a configuration option to include warning messages in the search completion report.

Minor fixes: Reduce occurrences of reports of excessive library links and report them as warnings instead of errors. Create submenus for large numbers of book links. Combine metadata for discovered books from different library providers. Sort discovered books in search results. Increase pacing delay between Amazon queries. Fix minor bugs.

Version 1.12.3 - 05 June 2014

Fix Freading search results truncated to first 16 due to website changes.

Version 1.12.2 - 30 May 2014

Fix search errors resulting from OverDrive website changes. (Expected # results but found only 0)

Version 1.12.1 - 15 May 2014

Make sure that an error message is displayed upon failure to queue a job completion dialog box.

Fix error (AttributeError: mechanize._mechanize.Browser instance has no attribute replace) when signing in to a library with a branch id.

Version 1.12.0 - 06 May 2014

Starting with this release of the plugin, links to audiobooks and e-books will be kept independently of each other. This makes it possible to search for calibre books with links of one type or the other and to tell which type of links a particular book has by using the plugin menu. Links to audiobooks are indicated in search results and in the discovered books table with a prefix of "#". Menu choices are available to search for calibre books linked to audiobooks. (Links to audiobooks generated by previous versions of the plugin will be treated the same as e-books. New searches will update existing links. Make sure the configuration option "Unlink books if no longer found by search" is set.)

Do author name searches at Freading in both "last, first" and "first last" formats to detect books that are listed at Freading either way.

Handle recent changes to 3M library sites that were causing search failures. (The changes were apparently made to support audiobooks, however no 3M libraries appear to have any audiobooks in their collections at this time.)

Do author name searches with and without accented characters. Previously accented characters were always replaced. This improves searches at 3M.

Excessive links to a single lending library for the same book may indicate that multiple library books have been incorrectly matched to a single calibre book. This sometimes occurs for books of a series all listed under the same name. An excessive number of links will now be reported as an error during search. (Note: There may be cases where a large number of links occur legitimately. For example, classic public domain books are available in a large number of editions. These errors should be ignored.)

Miscellaneous bug fixes: Detect which 3M libraries support recommendations. Fix occasional "Unpaired info" error for 3M books. Fix occasional "ValueError invalid literal for int with base 10". Match abridged/unabridged editions for audiobooks. Retry when Amazon occasionally returns an empty book page. Prevent excessive stripping of book subtitles. Fix reporting of OverDrive branch ids for consortia.

Version 1.11.0 - 21 Apr 2014

Added provider Axis 360.

Handle OverDrive sites that require a session to be established before performing a search (Toronto Public Library).

Support Overdrive sites that require sign in before allowing searches (school libraries).

Treat books with identical isbn as matches, even if titles or authors don't match.

Miscellaneous bug fixes and minor improvements.

Version 1.10.2 - 12 Mar 2014

Handle change made by Overdrive to search results page format.

Version 1.10.1 - 05 Mar 2014

Bug fixes for Amazon support.

Performance improvements.

Version 1.10.0 - 11 Feb 2014

Support additional provider, Amazon Kindle Owners' Lending Library, for US Amazon Prime members. Can search for books that can be borrowed or purchased from Amazon. Can update the 'amazon' book identifier.

Ability to configure author name variants to improve search and match accuracy.

Preserve the dialog box size and position, column sizes and sort order for Manage discovered books.

Show links for recommendable (!) and purchasable ($) books in the discovered books dialog.

Simpler book matching algorithm, eliminating the match confidence configuration parameter.

Faster book matching and handling of discovered books.

Rename associated metadata plugin from "Overdrive Link Helper" to "Overdrive Link".

Miscellaneous bug fixes.

Version 1.9.0 - 24 Dec 2013

Support additional lending library service providers OneClickdigital and Open Library.

Discovery of books by searching using keywords. Useful for finding books about a particular topic regardless of the author.

Remember the size and position of the search results dialog box and display result details immediately without the need to click the Show Details button. (Requires calibre version 1.17 or later.)

Support old-style Overdrive web sites, such as the Boston Public Library, by using This is slower and less accurate than the algorithm used for new-style library sites.

Use to find author names for books in cases where Freading returns none.

Reduce likelihood of incorrectly matching words in titles that sound similar.

Version 1.8.0 - 06 Nov 2013

In addition to Overdrive, supports lending library providers 3M Cloud Library and Freading.

Reverted back to having 'Search for books by selected authors' as a menu choice instead of a configuration option.

After searching to discover new books by selected authors, discovered books are proceeded by '*' in the details and the confirmation dialog now allows the discovered book results to be discarded by choosing "Yes (without discovered)".

Improve searching for anthologies.

Prevent Roman numbers in titles from matching similar numerals.

Unlink was removing links for disabled libraries, which should remain.

Version 1.7.1 - 26 Oct 2013

Fix bugs searching authors with multiple initials or apostrophes in names

Fix error when updating discovered books: NameError: global name 'add_olinks' is not defined

Fix occasional error with previously linked books: ValueError: Olink crid must be a UUID

Reduce visible HTML tags in job details when running as a ParallelJob

Version 1.7.0 - 24 Oct 2013

Searching for books is now done using the individual Overdrive library websites instead of This is faster and produces more complete search results.

Added the search configuration option "Check for books that can be recommended for acquisition (slow)". This causes each subsequent search to perform an additional check for books recommendable for acquisition by a library, but not currently available in the library's collection. The 'odrid' book identifier has been added to store links to these books at Overdrive libraries. Selecting any of the recommendable books that have been linked by a search will enable the menu choice of "Recommend book to libraryname", which will open a web browser to the page that the user can use to issue a recommendation for the library to acquire the book.

Replaced the "Search Overdrive for books by selected authors" menu item and "Save discovered unavailable books" configuration option with the new search configuration option, "Discover more books by authors of selected books". During search, this will save information about any newly discovered books by the authors of the selected books that are not currently present in calibre. The menu choice to manage this list has been renamed from "Manage Search-by-authors results" to "Manage discovered books".

In search results the links to available books in the library collection are displayed as "@libraryname" and links to books that can be recommended for acquisition are displayed as "!libraryname".

The submenu choices of "Select previously linked books" have been changed. "Select all previously linked books" is now "Select all available books". There is a new section with "Select all recommendable books" and select recommendable books at individual libraries. The recommendable books choices will not select books that are available from a library.

Renamed the configuration option "Allow multiple simultaneous jobs" to "Allow search jobs to run simultaneously".

Renamed the configuration option "Automatically select modified books" to "Mark changed books". This option will mark books that have been modified by the plugin, but will no longer cause a search for the marked books to be performed afterwards.

Eliminated the configuration options "Exclude books with tags matching" and "Proxy URL".

Version 1.6.0 - 18 Jun 2013

Handle parsing of recent change to Overdrive library websites

Option to split large searches into multiple jobs

Option to exclude books from search based on tags

Option to change search language, defaults to English

Option to save discovered, but unavailable, books to be excluded from future searches

Version 1.5.0 - 14 Mar 2013

"Discard Existing" changed to "Update Existing" in the "Manage Search-by-authors results" dialog (Updates Overdrive links of corresponding calibre books that were manually added subsequent to a search.)

Optional configuration of a SOCKS proxy to be used when searching Overdrive

More frequent updates to search job status and progress

Version 1.4.0 - 13 Feb 2013

Support Overdrive library consortia that require a branch to be selected during sign in

Fix exception when changing the priority of a newly configured Overdrive library

Version 1.3.2 - 15 Jan 2013

Fix incorrect handling of authors in last,first format in some cases

Find book matches by including partial title when a search by only author exceeds the search limit

Version 1.3.1 - 06 Jan 2013

Fix exception when attempting to configure a new library

Version 1.3.0 - 29 Dec 2012

Optional sign in with user's credentials to detect additional books available through Overdrive Advantage

Handle further changes in the Overdrive website redesign

Extend timeouts for slow responding websites

Version 1.2.2 - 06 Dec 2012

Handle changes at Brooklyn Public Library website

Additional default sample libraries

Version 1.2.1 - 20 Sep 2012

Bug fix for occasional error in menu display

Version 1.2.0 - 19 Sep 2012

Generate the menu actions ahead of time for compatibility with keyboard shortcuts and the Favourites Menu plugin.

Show both regular search and search for other available books by author in the plugin menu.

Performance improvements in 'Manage Search-by-author results' dialog.

Version 1.1.0 - 06 Sep 2012

Added searching by author for available Overdrive books that are missing from the calibre library.

Improvements to the fuzzy matching algorithm for titles and authors.

Reorganization of configuration options.

Reorganization of search results report.

Version 1.0.2 - 14 Aug 2012

Bug fix. (Prevent possible crash!)

Version 1.0.1 - 14 Aug 2012

Bug fix. (object has no attribute 'ids')

Version 1.0.0 - 14 Aug 2012

Initial release.

I have been working on a GUI plugin for Calibre to meet a need I have to find books of interest at my local e-book lending library, powered by Overdrive. I am continuing to tinker with the software, but it has reached the point where it is useful for me and might be of use to others.

This is my first software development using Python. I followed examples and borrowed code liberally from existing plugins. (Thanks kiwidude!) This plugin has only been tested under 64-bit Windows 7 with Calibre versions since 0.8.60, but I don’t see any reason why it shouldn’t work on the other platforms that Calibre supports.

Last edited by jhowell; 09-13-2016 at 10:29 AM.
jhowell is offline   Reply With Quote