|
|
#1291 |
|
Enthusiast
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 40
Karma: 100180
Join Date: Apr 2020
Device: none
|
scarlettruin and wolfi please try installing the plugin from the latest Annotations.zip file in one of the previous posts.
|
|
|
|
|
|
#1292 |
|
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1,076
Karma: 1084520
Join Date: Sep 2017
Location: Buenos Aires, Argentina
Device: moon+ reader, kindle paperwhite
|
using the one from thread #1279
caliber, version 9.3.0 ERROR: Unconsidered exception: <b>ModuleNotFoundError</b>:No module named 'ParseKindleMyClippingsTxt' caliber 9.3 embedded-python: True Windows-10-10.0.19045-SP0 Windows ('64bit', 'WindowsPE') ('Windows', '10', '10.0.19045') Python 3.14.2 Windows: ('10', '10.0.19045', 'SP0', 'Multiprocessor Free') Interface language: en EXE path: C:\Program Files\Calibre2\calibre.exe Successfully initialized third party plugins: DeACSM (0, 0, 16) && DeDRM (10, 0, 3) && Annotations (1, 17, 15) && Count Pages (1, 14, 6) && Ebook Translator (2, 4, 1) && Find Duplicates (1, 10, 10) && Goodreads (1, 8, 4) && Kindle hi-res covers (0, 5, 1) && Reading List (1, 15, 7) Traceback (most recent call last): File "calibre_plugins.annotations.action", line 376, in fetch_usb_connected_device_annotations File "calibre_plugins.annotations.action", line 420, in fetch_usb_device_annotations File "calibre_plugins.annotations.action", line 637, in get_annotated_books_on_usb_device File "C:\Users\Usuario\AppData\Local\Temp\calibre-928fgc_w\calibre_annotations_plugin\Kindle.py", line 71, in get_active_annotations File "C:\Users\Usuario\AppData\Local\Temp\calibre-928fgc_w\calibre_annotations_plugin\Kindle.py", line 362, in _parse_my_clippings ModuleNotFoundError: No module named 'ParseKindleMyClippingsTxt' |
|
|
|
|
|
#1293 |
|
Bibliophagist
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 50,800
Karma: 178402710
Join Date: Jul 2010
Location: Vancouver
Device: Kobo Sage, Libra Colour, Lenovo M8 FHD, Paperwhite 4, Tolino epos
|
The module appears to be in the Readers' folder. The error only occurs when I have a Kindle ereader connected and try to pull annotations from it.
|
|
|
|
|
|
#1294 | |
|
Junior Member
![]() Posts: 3
Karma: 10
Join Date: Jan 2013
Device: kindle
|
Quote:
|
|
|
|
|
|
|
#1295 |
|
Junior Member
![]() Posts: 3
Karma: 10
Join Date: Mar 2026
Device: Kindle Paperwhite
|
Unfortunately a similar error on my Kindle Paperwhite with the latest version 1.17.15 (the one from thread #1279):
calibre, version 9.4.0 ERROR: Unhandled exception: <b>ModuleNotFoundError</b>:No module named 'ParseKindleMyClippingsTxt' calibre 9.4 embedded-python: True Windows-11-10.0.26100-SP0 Windows ('64bit', 'WindowsPE') ('Windows', '11', '10.0.26100') Python 3.14.2 Windows: ('11', '10.0.26100', 'SP0', 'Multiprocessor Free') Interface language: None EXE path: C:\Program Files\Calibre2\calibre.exe Successfully initialized third party plugins: Annotations (1, 17, 15) Traceback (most recent call last): File "calibre_plugins.annotations.action", line 376, in fetch_usb_connected_device_annotations File "calibre_plugins.annotations.action", line 420, in fetch_usb_device_annotations File "calibre_plugins.annotations.action", line 637, in get_annotated_books_on_usb_device File "C:\Users\UserX\AppData\Local\Temp\calibre-_a17zjlf\calibre_annotations_plugin\Kindle.py", line 71, in get_active_annotations File "C:\Users\UserX\AppData\Local\Temp\calibre-_a17zjlf\calibre_annotations_plugin\Kindle.py", line 362, in _parse_my_clippings ModuleNotFoundError: No module named 'ParseKindleMyClippingsTxt' Please help to resolve this issue or let me know if you need some additional info. Thank you so much in advance! |
|
|
|
|
|
#1296 |
|
Junior Member
![]() Posts: 3
Karma: 10
Join Date: Mar 2026
Device: Kindle Paperwhite
|
Below is the solution provided by Gemini.
I have tested it in both Calibre 9.4 and 9.5 and it did work OK for me. Hope it helps you too! I am new to this forum - please feel free to remove the post if it is inappropriate in any way. ========== ### Summary of Changes to Fix `ModuleNotFoundError` in Annotations Plugin The error `ModuleNotFoundError: No module named 'ParseKindleMyClippingsTxt'` occurs because of the order and manner in which the plugin loads its internal files (modules). The fix involves making two small edits to the `action.py` file within the plugin to ensure that modules are loaded in the correct order and are properly shared. Here are the exact changes that were made: **1. Enabled Module Caching in `action.py`** To ensure that a loaded module is available to other modules that need it, caching was enabled. * **File:** `action.py` * **Function:** `load_source` * **Change:** The line `sys.modules[module.__name__] = module` was uncommented. **Before:** ```python # The module is always executed and not cached in sys.modules. # Uncomment the following line to cache the module. # sys.modules[module.__name__] = module ``` **After:** ```python # The module is always executed and not cached in sys.modules. # Uncomment the following line to cache the module. sys.modules[module.__name__] = module ``` **2. Prioritized Module Loading in `action.py`** To fix the import error, the code was instructed to load the required `ParseKindleMyClippingsTxt.py` module *before* any other modules that depend on it. * **File:** `action.py` * **Function:** `load_dynamic_reader_classes` * **Change:** Logic was added to find `ParseKindleMyClippingsTxt.py` in the list of files to be loaded and move it to the beginning. **Before:** ```python # Load the builtin classes folder = 'readers/' reader_app_classes = get_resource_files(self.plugin_path, folder=folder) sample_classes = ['SampleExportingApp', 'SampleFetchingApp'] ``` **After:** ```python # Load the builtin classes folder = 'readers/' reader_app_classes = get_resource_files(self.plugin_path, folder=folder) # Ensure ParseKindleMyClippingsTxt is loaded first to satisfy dependencies parser_module = 'readers/ParseKindleMyClippingsTxt.py' if parser_module in reader_app_classes: reader_app_classes.remove(parser_module) reader_app_classes.insert(0, parser_module) sample_classes = ['SampleExportingApp', 'SampleFetchingApp'] ``` **3. ZIP and load into Calibre** Once the changes are done archive the entire folder into ZIP file - e.g. Annotations_1.17.16.zip The load the archive into Calibre using Preferences=> Advanced => Plugins => Load plugin from file ======================= Corresponding ZIP file is attached too. |
|
|
|
![]() |
| Tags |
| sampleexportingapp |
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| [GUI Plugin] KindleUnpack - The Plugin | DiapDealer | Plugins | 532 | 03-19-2026 12:30 PM |
| [GUI Plugin] Open With | kiwidude | Plugins | 405 | 02-09-2026 07:54 AM |
| [GUI Plugin] Annotations (closed) | GRiker | Plugins | 68 | 06-17-2014 06:11 AM |
| [GUI Plugin] KiNotes | -axel- | Plugins | 0 | 07-14-2013 06:39 PM |
| [GUI Plugin] Plugin Updater **Deprecated** | kiwidude | Plugins | 159 | 06-19-2011 12:27 PM |