Download all your kindle books script.
GPL-3.0 License
Download all your kindle books script.
AttributeError: 'NoneType' object has no attribute 'url'
https://github.com/yihong0618/Kindle_download_helper/issues/155#issuecomment-1928677849
pip3 install -r requirements.txt
python no_kindle.py -e ${email} -p ${password}
#
python no_kindle.py -e ${email} -p ${password} --pdoc
# !!!!!! web
#
python no_kindle.py -e ${email} -p ${password} --memory
# Clipping #153
python no_kindle.py -e ${email} -p ${password} --bookmark
python3 --version # python
pip3 install kindle_download # pip
git clone https://github.com/yihong0618/Kindle_download_helper.git && cd Kindle_download_helper
pip3 install -r requirements.txt
python kindle.py -h #
usage: kindle.py [-h] [--cookie COOKIE | --cookie-file COOKIE_FILE] [--cn] [--jp] [--de] [--uk] [--resume-from INDEX] [--cut-length CUT_LENGTH] [-o OUTDIR] [-od OUTDEDRMDIR] [-s SESSION_FILE] [--pdoc]
[--resolve_duplicate_names] [--readme] [--dedrm] [--list] [--device_sn DEVICE_SN] [--mode MODE]
[csrf_token]
positional arguments:
csrf_token amazon or amazon cn csrf token
optional arguments:
-h, --help show this help message and exit
--cookie COOKIE amazon or amazon cn cookie
--cookie-file COOKIE_FILE
load cookie local file
--cn if your account is an amazon.cn account
--jp if your account is an amazon.co.jp account
--de if your account is an amazon.de account
--uk if your account is an amazon.co.uk account
--resume-from INDEX resume from the index if download failed
--cut-length CUT_LENGTH
truncate the file name
-o OUTDIR, --outdir OUTDIR
download output dir
-od OUTDEDRMDIR, --outdedrmdir OUTDEDRMDIR
download output dedrm dir
-s SESSION_FILE, --session-file SESSION_FILE
The reusable session dump file
--pdoc to download personal documents or ebook
--resolve_duplicate_names
Resolve duplicate names files to download
--readme If you want to generate kindle readme stats
--dedrm If you want to `dedrm` directly
--list just list books/pdoc, not to download
--device_sn DEVICE_SN
Download file for device with this serial number
--mode MODE Mode of download, all : download all files at once, sel: download selected files
cookiecsrfToken
python3 kindle.py --dedrm --cn ## --dedrm DRM
() cookiecsrfToken
python3 kindle.py ${csrfToken} --cookie ${cookie} --dedrm --cn # Kindle DRM
python3 kindle.py ${csrfToken} --cookie ${cookie} --dedrm # Kindle
python3 kindle.py --mode sel # "python3 kindle.py --pdoc --mode sel" for personal document
Input the index of books you want to download, split by space (q to quit, l to list books).
"q""l" Index71020
7 10 20
range
4 5 10:12 15
4510111215
cookie cookie
F12
(Network) Name ajax
Request Headers Cookie
Payload csrfToken
python3 kindle.py --cn --cookie ${cookie}
cookie python3 kindle.py --cookie-file ${cookie_file}
CSRF token CSRF Token
CSRF Token
(Ctrl + F) csrfToken
# CSRF Token
python3 kindle.py --cn ${csrfToken}
# Both cookie and CSRF Token
python3 kindle.py --cn --cookie ${cookie} ${csrfToken}
browser-cookie3 cookie
amazon.cn
csrfToken
valuepython3 kindle.py --cn
python3 kindle.py --cn --pdoc
python3 kindle.py --cn --pdoc --dedrm
amazon.com
csrfToken
value copypython3 kindle.py
python3 kindle.py --pdoc
amazon.de
csrfToken
value copypython3 kindle.py --de
python3 kindle.py --de --pdoc
amazon.co.uk
csrfToken
value copypython3 kindle.py --uk
python3 kindle.py --uk --pdoc
amazon.jp
csrfToken
python3 kindle.py --jp
python3 kindle.py --jp --pdoc
DOWNLOADS
DOWNLOADS
--dedrm
DEDRMS
--resume-from ${num}
--cut-length 70
--pdoc
--resolve_duplicate_names
--readme
my_kindle_stats.md
--dedrm
DEDRMS
dedrm.py
azw epub# 3 python3 dedrm.py 1 2 3 4
# ebook epub dedrm
$ python3 dedrm.py ebook DeDRMed key.txt epub
DOWNLOADS
directory under the command execution directory, the book will be downloaded in DOWNLOADS
directory.--resume-from ${num}
-cut-length 70
to truncate the file name--pdoc
--resolve_duplicate_names
to resolve conflicts with the same name.--readme
generated files are in my_kindle_stats.md
black kindle.py kindle_gui.py