![]() |
#1 |
Member
![]() Posts: 14
Karma: 10
Join Date: Aug 2025
Device: PocketBook Verse Pro
|
[Metadata Source Plugin] StoryGraph
Scrapes metadata and covers from https://thestorygraph.com/. Metadata include:
It also adds a StoryGraph GUID identifier and uses it to conduct searches. Of note to me are the tags - this website is a great resource for crowdsourced mood and pace information (in fact, the only one I've found). There is other potential information that could be fetched, such as page counts and content warnings, but I've limited this implementation to only the major information the StoryGraph itself puts in the book info header. If there is demand for the other info, though, let me know and I'll see about scraping and adding it. Note that edition publication information from the StoryGraph is not the most reliable; to that end, I've provided a configuration option to use the first release year of the book, instead. This is only the year, though. Last edited by BetterRed; 08-31-2025 at 09:36 PM. Reason: Replace attachment |
![]() |
![]() |
![]() |
#2 | |
Weirdo
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 862
Karma: 11659320
Join Date: Nov 2019
Location: Wuppertal, Germany
Device: Kobo Sage, Kobo Libra 2, Boox Note Air 2+
|
This plugin probably violates term 2 of their ToS:
https://app.thestorygraph.com/terms-of-service Quote:
|
|
![]() |
![]() |
![]() |
#3 |
Member
![]() Posts: 14
Karma: 10
Join Date: Aug 2025
Device: PocketBook Verse Pro
|
That's a fair point. By my read, use in one's personal Calibre library wouldn't fall under public display, but I'll ask them. I'll update with their response once I receive it.
|
![]() |
![]() |
![]() |
#4 |
Member
![]() Posts: 14
Karma: 10
Join Date: Aug 2025
Device: PocketBook Verse Pro
|
They state that they provide no official comment besides the terms themselves, but hope to formulate a clearer policy at some point in the future.
|
![]() |
![]() |
![]() |
#5 |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 54
Karma: 52704
Join Date: Nov 2017
Device: Kobo Libra Colour, Kindle Voyage(s)
|
I'm interested in this plugin but it's failing to find any books. I've pasted the relevant bits of the error log below:
Plugin StoryGraph failed Traceback (most recent call last): File "lxml/cssselect.py", line 12, in <module> ModuleNotFoundError: No module named 'cssselect' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "calibre/ebooks/metadata/sources/identify.py", line 47, in run File "calibre_plugins.dummy1.__init__", line 342, in identify books = root.cssselect(".book-pane") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "src/lxml/etree.pyx", line 1613, in lxml.etree._Element.cssselect File "bypy-importer.py", line 279, in exec_module File "lxml/cssselect.py", line 14, in <module> ImportError: cssselect does not seem to be installed. See https://pypi.org/project/cssselect/ |
![]() |
![]() |
![]() |
#6 |
Member
![]() Posts: 14
Karma: 10
Join Date: Aug 2025
Device: PocketBook Verse Pro
|
Hmm, that module is definitely included in my version of Calibre. What version are you using? And on what OS?
|
![]() |
![]() |
![]() |
#7 |
Resident Curmudgeon
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 80,096
Karma: 148565303
Join Date: Nov 2006
Location: Roslindale, Massachusetts
Device: Kobo Libra 2, Kobo Aura H2O, PRS-650, PRS-T1, nook STR, PW3
|
|
![]() |
![]() |
![]() |
#8 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1,242
Karma: 1419583
Join Date: Dec 2016
Location: Goiânia - Brazil
Device: iPad, Kindle Paperwhite, Kindle Oasis
|
You are probably on linux, right? Maybe using a distro version of calibre? Those versions can differ from official calibre and have other libs added. I have the latest calibre (8.9) installed on my Windows 11 machine and the module is not included either.
|
![]() |
![]() |
![]() |
#9 |
creator of calibre
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 45,466
Karma: 27757440
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
|
If you want to use CSS based selectors with lxml trees in calibre use css_selectors, like this
Code:
from css_selectors import Select select = Select(root) for a in select('your css selector'): ... |
![]() |
![]() |
![]() |
#10 |
Member
![]() Posts: 14
Karma: 10
Join Date: Aug 2025
Device: PocketBook Verse Pro
|
Thanks both. Uploading an updated version to use the internal library.
|
![]() |
![]() |
![]() |
#11 |
Member
![]() Posts: 14
Karma: 10
Join Date: Aug 2025
Device: PocketBook Verse Pro
|
Frustratingly, I apparently cannot edit my top post because of restrictions on new accounts. I've sent a message to whoever runs this website but I guess I have to wait in the meantime. It's also silently dropping my new posts.
I don't suppose there are any other distribution channels for plugins using the built-in installer? |
![]() |
![]() |
![]() |
#12 |
Member
![]() Posts: 14
Karma: 10
Join Date: Aug 2025
Device: PocketBook Verse Pro
|
Apparently my account is too new to edit posts.
|
![]() |
![]() |
![]() |
#13 |
Member
![]() Posts: 14
Karma: 10
Join Date: Aug 2025
Device: PocketBook Verse Pro
|
And what I thought was messages being silently dropped is actually them being held back and posted in batches. Sorry to all subscribed.
|
![]() |
![]() |
![]() |
#14 | |
null operator (he/him)
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 21,843
Karma: 30277270
Join Date: Mar 2012
Location: Sydney Australia
Device: none
|
Quote:
Moderator Notice
To edit your own posts you need to get your post count up to 10 or more, post some replies in some of the threads in the Lounge. Your string of duplicate posts went into moderation, I deleted them except the one I've quoted. And this is the only place the calibre plugin updater knows about, and it only knows about plugins that are listed in the Index of plugins. BR |
|
![]() |
![]() |
![]() |
#15 |
Member
![]() Posts: 14
Karma: 10
Join Date: Aug 2025
Device: PocketBook Verse Pro
|
Understood, thanks for the explanation.
|
![]() |
![]() |
![]() |
Tags |
calibre, metadata, mood, pace, storygraph |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
[Metadata Source Plugin] Kobo Metadata | NotSimone | Plugins | 181 | 08-15-2025 11:44 PM |
[Metadata Source Plugin] Show multiple results for single source? | memory_dump | Plugins | 6 | 06-03-2025 01:03 AM |
How do I know which Metadata Source Plugin was called from fetch-ebook-metadata? | eryMpexI | Library Management | 6 | 04-22-2023 08:58 AM |
Read a book's metadata in a Metadata source plugin? | J-H | Development | 2 | 03-30-2021 09:08 AM |
[Metadata Source Plugin] Empty Plugin? (Fake Identifier) | mneimeyer | Plugins | 3 | 11-11-2019 08:07 PM |