tns-hun / kobo-book-downloader Goto Github PK
View Code? Open in Web Editor NEWA tool to download your purchased Kobo books and remove the DRM from them.
License: The Unlicense
A tool to download your purchased Kobo books and remove the DRM from them.
License: The Unlicense
The python kobo-book-downloader list --all
currently shows five books, but I can download only one of them (because I bought it). Two other books are on the list because I bought them in the past but then I successfully requested a refund. Other two books are on the list because they are on my wishlist. But please notice I have a lot of other books on my wishlist that don't appear in the kobo-book-downloader
list.
Is it possible to avoid displaying books that I cannot download?
Running latest git version on Ubuntu 22.04, when trying to add user, after pasting the captcha code I get the error:
ERROR: Can't find the workflow ID in the login form. The page format might have changed.
Is it possible they changed the page format again within a week?
C:\Users\user\kobo-book-downloader-master>python kobo-book-downloader list --help
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "C:\Users\user\kobo-book-downloader-master\kobo-book-downloader\__main__.py", line 1, in <module>
from Commands import Commands
File "C:\Users\user\kobo-book-downloader-master\kobo-book-downloader\Commands.py", line 2, in <module>
from Kobo import Kobo, KoboException
File "C:\Users\user\kobo-book-downloader-master\kobo-book-downloader\Kobo.py", line 17, in <module>
import readline
ModuleNotFoundError: No module named 'readline'
All commands result in this error. I have all dependencies installed properly (I use other scripts that depend on them--they are installed in the default location)
Love kobo-book-downloader and the way it simplifies downloading and removing DRM from Kobo books. Had a problem using it just now for the first time in a month or two. Get the following errors when using any of the commands: For example,
jenny@jenny-PC:~/kobo-book-downloader-master$ python kobo-book-downloader pick /home/jenny/ --all
gives the following:
Traceback (most recent call last):
File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "kobo-book-downloader/main.py", line 82, in
Main()
File "kobo-book-downloader/main.py", line 75, in Main
Commands.PickBooks( arguments.OutputPath, arguments.all )
File "kobo-book-downloader/Commands.py", line 288, in PickBooks
rows = Commands.__GetBookList( listAll )
File "kobo-book-downloader/Commands.py", line 199, in __GetBookList
bookMetadata = newEntitlement[ "BookMetadata" ]
KeyError: 'BookMetadata'
Have tried downloading the code again and also deleting and regenerating the .config/kobo-book-downloader.json file and it gives the same errors.
Any suggestions?
Is it possible to export Kobo wishlist with kobo-book-downloader and save it for offline use? I'm adding hundreds of books to my Kobo wishlist, but if Kobo goes bankrupt I will lose all of them.
As far as I can see kobo-book-downloader has no license. In my opinion it would be better to choose a proper free software license. You may try https://choosealicense.com/ for help in picking one.
I get the following error message when running the python kobo-book-downloader list --all
command:
ERROR: Can't find the workflow ID in the login form. The page format might have changed.
This is after having inserted username/password/captcha.
I'm using the latest git version of kobo-book-downloader
on a Gentoo Linux system.
I've purchased a new book today. While I try to downloading the news book will get error, the error message as below:
ERROR: Download URL for supported formats can't be found for product.
After I try to download all books. I found that some book will download successfully but some book still get the same error.
It seems kobo-book-downloader doesn't work anymore:
$ python kobo-book-downloader/kobo-book-downloader list
Refreshing expired authentication token
Traceback (most recent call last):
File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "kobo-book-downloader/kobo-book-downloader/__main__.py", line 82, in <module>
Main()
File "kobo-book-downloader/kobo-book-downloader/__main__.py", line 66, in Main
Initialize()
File "kobo-book-downloader/kobo-book-downloader/__main__.py", line 15, in Initialize
Globals.Kobo.LoadInitializationSettings()
File "kobo-book-downloader/kobo-book-downloader/Kobo.py", line 133, in LoadInitializationSettings
response = self.Session.get( "https://storeapi.kobo.com/v1/initialization", headers = headers, hooks = hooks )
File "/usr/lib/python3.7/site-packages/requests/sessions.py", line 546, in get
return self.request('GET', url, **kwargs)
File "/usr/lib/python3.7/site-packages/requests/sessions.py", line 533, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python3.7/site-packages/requests/sessions.py", line 653, in send
r = dispatch_hook('response', hooks, r, **kwargs)
File "/usr/lib/python3.7/site-packages/requests/hooks.py", line 31, in dispatch_hook
_hook_data = hook(hook_data, **kwargs)
File "kobo-book-downloader/kobo-book-downloader/Kobo.py", line 32, in ReauthenticationHook
Globals.Kobo.RefreshAuthentication()
File "kobo-book-downloader/kobo-book-downloader/Kobo.py", line 117, in RefreshAuthentication
response.raise_for_status()
File "/usr/lib/python3.7/site-packages/requests/models.py", line 940, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 401 Client Error: Unauthorized for url: https://storeapi.kobo.com/v1/auth/refresh
Several changes at kobo have made this tool unusable. My updated version is actively maintained and has several new features.
https://github.com/subdavis/kobo-book-downloader
Please don't reply to this issue, open issues at https://github.com/subdavis/kobo-book-downloader/issues instead.
I'd like to save my Kobo wishlist locally in a text file, for backup purposes.
I tried with:
python kobo-book-downloader wishlist > kobo-wishlist.txt
But if I open kobo-wishlist.txt
with a text editor (emacs) I get the following output:
^[[1m1984^[[0m by George Orwell (ISBN: 9780547249643)
^[[1m2001: A Space Odyssey^[[0m by Arthur C. Clarke (ISBN: 9780748120789)
...
I could easily remove those escape sequences manually with a simple find & replace, but I wonder if kobo-book-downloader
can detect if its output is being redirected to a file and, in that case, strip any escape sequence automatically.
What do you think?
Hi, I try to connect to the kobo-book-downloader to Kobo API using the new Capcha mecanism. It seems to found everything it need to connect, but when actually opening the API, it receive a 403 Client Error. I have attached the log file (without my credential of course) with the "--verbose" option
Thanks,
kobo_error.log
Hi, I tried this today but the captain response is much longer than on your small video, it doesn't seem to work anymore as when pasting it in command line, it doesn't paste more than the 1024 first chatacters
As far as I know kobo-book-downloader
currently downloads Kobo e-books in the proprietary KEPUB format only. Is it possible to let the user download e-books in the standard EPUB format instead? Is Adobe Digital Editions the only way to accomplish that?
I'm a GNU/Linux user and I prefer to avoid running proprietary applications. Before discovering kobo-book-downloader
I was forced to download e-books with Adobe Digital Editions, which is proprietary software. I had to use either Wine or a Windows 10 QEMU guest. Thanks to your program I can now download Kobo books quickly and easily.
Do you accept donations? Do you accept cryptocurrencies like Bitcoin? I would be glad to be the first to donate...
After solving the Captcha during login and copy-pasting the resulting response, the script seems to hit an updated page
$ python kobo-book-downloader list
Waiting for your input. You can use Shift+Insert to paste from the clipboard. Ctrl+C aborts the program.
Kobo e-mail: [email protected]
Kobo password: XXXXXXXXXXX
ERROR: Can't find login form. The page format might have changed.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.