JimmXinu / FanFicFare

FanFicFare is a tool for making eBooks from stories on fanfiction and other web sites.
Other
738 stars 156 forks source link

Calibre locks up updating metadata with one story on ao3 #992

Closed HowardJeng closed 10 months ago

HowardJeng commented 10 months ago

FanFicFare 4.26.1 running as a calibre 6.25.0 plugin on Windows 11.

When trying to update a story in my library (https://archiveofourown.org/works/31952935), calibre locks up, forcing me to kill it with the OS. This happens with just this story; other stories on ao3 update without issues. If I try updating the story with "Overwrite if Newer" then after killing calibre the epub itself is updated, but the metadata file is not. When run with "Update Calibre Metadata from Web Site" there doesn't seem to be any effect beyond locking up calibre.

I have managed to update it successfully in the past. According to the date in calibre, the last successful attempt was on July 29th.

When I run calibre in debug mode, this is the only output generated:

FFF: DEBUG: 2023-08-19 15:50:26,342: calibre_plugins.fanficfare_plugin.fff_plugin(1126): FanFicFare v4.26.1 FFF: DEBUG: 2023-08-19 15:50:26,485: configurable.py(1072): use_browser_cache: FFF: DEBUG: 2023-08-19 15:50:26,486: configurable.py(1092): use_basic_cache:true FFF: INFO: 2023-08-19 15:50:26,486: adapter_archiveofourownorg.py(164): url: https://archiveofourown.org/works/31952935/navigate?view_adult=true FFF: INFO: 2023-08-19 15:50:26,486: adapter_archiveofourownorg.py(165): metaurl: https://archiveofourown.org/works/31952935?view_adult=true FFF: DEBUG: 2023-08-19 15:50:26,486: cache_basic.py(116): ========== MISS (GET) BasicCache https://archiveofourown.org/works/31952935/navigate?view_adult=true FFF: DEBUG: 2023-08-19 15:50:26,486: fetcher_requests.py(114): ---------- REQ (GET) RequestsFetcher https://archiveofourown.org/works/31952935/navigate?view_adult=true C:\Users\hjeng\AppData\Roaming\calibre\plugins\FanFicFare.zip\urllib3\connectionpool.py:1013: InsecureRequestWarning: Unverified HTTPS request is being made to host 'archiveofourown.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings FFF: DEBUG: 2023-08-19 15:50:26,842: fetcher_requests.py(127): response code:200 FFF: DEBUG: 2023-08-19 15:50:26,842: decorators.py(112): fromcache:False FFF: DEBUG: 2023-08-19 15:50:26,842: decorators.py(123): random sleep(2.50-7.50):3.27 FFF: DEBUG: 2023-08-19 15:50:30,116: requestable.py(55): Encoding:utf8 FFF: DEBUG: 2023-08-19 15:50:30,116: cache_basic.py(116): ========== MISS (GET) BasicCache https://archiveofourown.org/works/31952935?view_adult=true FFF: DEBUG: 2023-08-19 15:50:30,116: fetcher_requests.py(114): ---------- REQ (GET) RequestsFetcher https://archiveofourown.org/works/31952935?view_adult=true C:\Users\hjeng\AppData\Roaming\calibre\plugins\FanFicFare.zip\urllib3\connectionpool.py:1013: InsecureRequestWarning: Unverified HTTPS request is being made to host 'archiveofourown.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings C:\Users\hjeng\AppData\Roaming\calibre\plugins\FanFicFare.zip\urllib3\connectionpool.py:1013: InsecureRequestWarning: Unverified HTTPS request is being made to host 'archiveofourown.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings FFF: DEBUG: 2023-08-19 15:50:30,462: fetcher_requests.py(127): response code:200 FFF: DEBUG: 2023-08-19 15:50:30,462: decorators.py(112): fromcache:False FFF: DEBUG: 2023-08-19 15:50:30,462: decorators.py(123): random sleep(2.50-7.50):7.10 FFF: DEBUG: 2023-08-19 15:50:37,560: requestable.py(55): Encoding:utf8 FFF: DEBUG: 2023-08-19 15:50:37,811: adapter_archiveofourownorg.py(283): numChapters: (283) FFF: DEBUG: 2023-08-19 15:50:38,021: story.py(1376): getSubjectTags:odict_keys(['FanFiction', 'Dark Souls (Video Game) References', 'Demons', 'F/M', 'Fix-It of Sorts', 'Gamer oc', 'Gen', 'Implied Childhood Sexual Abuse', 'Violence', 'Multi-Fandom', 'Young Justice (Cartoon)', 'Young Justice - All Media Types', 'Artemis Crock', 'Bruce Wayne', 'Clark Kent', 'Diana (Wonder Woman)', 'Dick Grayson', 'Giovanni "John" Zatara', 'Kon-El | Conner Kent', "M'gann M'orzz", 'Original Characters', 'Zatanna Zatara', 'In-Progress']) FFF: DEBUG: 2023-08-19 15:50:38,023: calibre_plugins.fanficfare_plugin.fff_plugin(1436): update existing id:3219 FFF: DEBUG: 2023-08-19 15:50:47,923: calibre_plugins.fanficfare_plugin.fff_plugin(1785): add/update Project: Gamer Ver. 2 https://archiveofourown.org/works/31952935 id(3219)

JimmXinu commented 10 months ago

I'm able to download and update that story with FFF v4.26.1 on Calibre 6.25 on Win10.

Are you running the official Calibre version and FFF plugin installed through the plugin list in Calibre?

Because that last report debug calibre_plugins.fanficfare_plugin.fff_plugin(1785): add/update should be on line 1784, not 1785.

I'd try downloading and reinstalling at least the plugin.

HowardJeng commented 10 months ago

Sorry, this looks like it's a problem with my computer. I have the calibre library stored in a dropbox share and for some reason just that metadata file was being locked down by dropbox. Pausing dropbox let me update the file, though I don't know why it didn't give a permission error or something.

JimmXinu commented 10 months ago

Please read this Calibre FAQ: I am getting errors with my calibre library on a networked drive/NAS?

HowardJeng commented 10 months ago

I did. It says "If you must share the actual library, use a file syncing tool like DropBox or rsync instead of a networked drive." That's why I'm using dropbox. It's not foolproof, because dropbox does sometimes lock files when calibre tries writing to them multiple times back to back, but every time before this it gave a permission error rather than lock up the application and could simply be retried.