Open chongiscool opened 2 years ago
可以,感谢。
你也可以提个 PR 在 README 中,link 是这个 issue. 也能方便到大家,我来 merge
行,谢谢大佬!不过,我好久没 PR 过,我试试
@chongiscool 内置了 dedrm 你可以加上 --dedrm 实验一下。
如果我没理解错的话,我试了下这条命令 python3 kindle.py --cn --dedrm --cookie ${cookie} ${csrf_Token}
,测试了2种情况,在 首选项设备分别是 kindle pw2 和 kindle for mac(low version),在 DERDMS 目录中得到的分别是 azw3
和 azw
。按说应该是 mobi
格式的,对吗?
不是。就是得到这俩格式的。但你可以任意转换了。
那就好极了,我再试试
完美!我应该这周过来直接捡现成的用,哈哈:)azw3 和 azw 都能在 kindle for mac(low version)和 Kindle for mac(最新版),首选项 是哪个设备貌似已经不重要了。DEDRM 之后,貌似再转不转格式都不重要了。这个产品已经可以交付给国内的绝大多数用户了。
谢谢。
完美!我应该这周过来直接捡现成的用,哈哈:)azw3 和 azw 都能在 kindle for mac(low version)和 Kindle for mac(最新版),首选项 是哪个设备貌似已经不重要了。DEDRM 之后,貌似再转不转格式都不重要了。这个产品已经可以交付给国内的绝大多数用户了。
请问如何DEDRM?使用的--dedrm
选项报错。 .azw3: No key found in 2 PIDs tried. 虽然可以下载azw3格式文件,但是DEDRMS文件夹里面没有。在DOWNLOADS文件夹里面会出现一个 key.txt 文件,大致内容如下。 Key is: 5US9nrt8t3SJP56MtnS86tSr6Etdr7xxxxxxxxrE
这个key是40位的。
使用了 https://github.com/noDRM/DeDRM_tools DeDRM_tools + Calibre 5 进行解密 (版本6不支持此插件)。可是不知如何导入这个下载时生成的key。(本人没有kindle paperwhite或者fire,都是用android/ios/windows/web/mac看电子书的)
选择kindle eink ebooks,把40位的key当作序列号输入,超过16位,失败。 选择Kindle for Android/Mac/PC 时不知如何导入key。
https://github.com/apprenticeharper/DeDRM_tools/wiki/Exactly-how-to-remove-DRM#preparing 原作者说不支持kindle android/ios。
另外,需要在本机mac上登陆一下kindle for mac让calibre提取mac上的kindle key吗?(没看明白)
完美!我应该这周过来直接捡现成的用,哈哈:)azw3 和 azw 都能在 kindle for mac(low version)和 Kindle for mac(最新版),首选项 是哪个设备貌似已经不重要了。DEDRM 之后,貌似再转不转格式都不重要了。这个产品已经可以交付给国内的绝大多数用户了。
请问如何DEDRM?使用的
--dedrm
选项报错。 .azw3: No key found in 2 PIDs tried. 虽然可以下载azw3格式文件,但是DEDRMS文件夹里面没有。在DOWNLOADS文件夹里面会出现一个 key.txt 文件,大致内容如下。Key is: 5US9nrt8t3SJP56MtnS86tSr6Etdr7xxxxxxxxrE
这个key是40位的。使用了 https://github.com/noDRM/DeDRM_tools DeDRM_tools + Calibre 5 进行解密 (版本6不支持此插件)。可是不知如何导入这个下载时生成的key。(本人没有kindle paperwhite或者fire,都是用android/ios/windows/web/mac看电子书的)
选择kindle eink ebooks,把40位的key当作序列号输入,超过16位,失败。 选择Kindle for Android/Mac/PC 时不知如何导入key。
https://github.com/apprenticeharper/DeDRM_tools/wiki/Exactly-how-to-remove-DRM#preparing 原作者说不支持kindle android/ios。
另外,需要在本机mac上登陆一下kindle for mac让calibre提取mac上的kindle key吗?(没看明白)
你的默认设备是实体的 kindle 么?请问
@xros 我刚刚拉取了最新的代码测试了下,下载了几本书,在DEDRMS文件夹内任意找一本(xx.azw3),通过 Kindle for mac (已退出账号)能打开和阅读,说明已经 DeDRM了。
这个工具(kindle_download_helper)现在已经集成了 DeDRM 的功能,通过添加 --dedrm
选项,所以可以忽略 DeDRM_tools + Calibre 5 这一部分;
我调用的命令是:python3 kindle.py --cn --dedrm --cookie-file {cookie} {csrfToken}
输出内容如下,我下载2本后就手动暂停了。
Amazon open their bot check will sleep 3s
Using default device serial Number: G090G105xxxxxxxxT
(1/164)downloading SAT词汇词根+联想记忆法(乱序版).azw3 4691766 bytes
SAT词汇词根+联想记忆法(乱序版).azw3 downloaded
MobiDeDrm v1.0.
Copyright © 2008-2020 The Dark Reverser, Apprentice Harper et al.
Crypto Type is: 2
File is encoded with PID UMB5xxxxxT.
Decrypting. Please wait . . . . . . . . . . . . . done
(2/164)downloading 美国学生权威历史教材_美国历史(英汉对照)(经典珍藏版)(学生版)_ For School Use (1909) (English Edition).azw3 12096672 bytes
美国学生权威历史教材_美国历史(英汉对照)(经典珍藏版)(学生版)_ For School Use (1909) (English Edition).azw3 downloaded
MobiDeDrm v1.0.
Copyright © 2008-2020 The Dark Reverser, Apprentice Harper et al.
Crypto Type is: 2
File is encoded with PID eatHxxxxx3.
Decrypting. Please wait . . . . . done
^CTraceback (most recent call last):
可以看到 Decrypting. Please wait . . . . . . . . . . . . . done
就说明,DeDRM 了一本。你可以试试,还有疑问或遇到问题,可以贴一些输出的信息,只要在复制时,去掉一些关键消息(如:cookie、csrfToken、serial Number等)即可。
@yihong0618
你的默认设备是实体的 kindle 么?请问
我默认实体时kindle mac客户端,我没有实体kindle阅读器。难道必须要有kindle实体,才能下载对应的电子书文件,然后dedrm吗?
我用同样的,试过默认实体为 kindle pc以及kindle android、kindle ios都是下载的azw3文件。都一样的报错,不能dedrm。
环境
@xros 我刚刚拉取了最新的代码测试了下,下载了几本书,在DEDRMS文件夹内任意找一本(xx.azw3),通过 Kindle for mac (已退出账号)能打开和阅读,说明已经 DeDRM了。
这个工具(kindle_download_helper)现在已经集成了 DeDRM 的功能,通过添加
--dedrm
选项,所以可以忽略 DeDRM_tools + Calibre 5 这一部分;我调用的命令是:
python3 kindle.py --cn --dedrm --cookie-file {cookie} {csrfToken}
输出内容如下,我下载2本后就手动暂停了。
Amazon open their bot check will sleep 3s Using default device serial Number: G090G105xxxxxxxxT (1/164)downloading SAT词汇词根+联想记忆法(乱序版).azw3 4691766 bytes SAT词汇词根+联想记忆法(乱序版).azw3 downloaded MobiDeDrm v1.0. Copyright © 2008-2020 The Dark Reverser, Apprentice Harper et al. Crypto Type is: 2 File is encoded with PID UMB5xxxxxT. Decrypting. Please wait . . . . . . . . . . . . . done (2/164)downloading 美国学生权威历史教材_美国历史(英汉对照)(经典珍藏版)(学生版)_ For School Use (1909) (English Edition).azw3 12096672 bytes 美国学生权威历史教材_美国历史(英汉对照)(经典珍藏版)(学生版)_ For School Use (1909) (English Edition).azw3 downloaded MobiDeDrm v1.0. Copyright © 2008-2020 The Dark Reverser, Apprentice Harper et al. Crypto Type is: 2 File is encoded with PID eatHxxxxx3. Decrypting. Please wait . . . . . done ^CTraceback (most recent call last):
可以看到
Decrypting. Please wait . . . . . . . . . . . . . done
就说明,DeDRM 了一本。你可以试试,还有疑问或遇到问题,可以贴一些输出的信息,只要在复制时,去掉一些关键消息(如:cookie、csrfToken、serial Number等)即可。
amazon上默认设置kindle for mac客户端。 试过默认实体为 kindle pc以及kindle android、kindle ios都是下载的azw3文件。都一样的报错,不能dedrm。 我没有实体kindle阅读器。 报错结果如下
(2/17)downloading 某指南.azw3 11262281 bytes
某指南.azw3 downloaded
MobiDeDrm v1.0.
Copyright © 2008-2020
Crypto Type is: 2
Dedrm failed for 某指南.azw3: No key found in 2 PIDs tried
其他所有的书籍都是如此报错,解密的时候出错。
@xros 我刚刚拉取了最新的代码测试了下,下载了几本书,在DEDRMS文件夹内任意找一本(xx.azw3),通过 Kindle for mac (已退出账号)能打开和阅读,说明已经 DeDRM了。
这个工具(kindle_download_helper)现在已经集成了 DeDRM 的功能,通过添加
--dedrm
选项,所以可以忽略 DeDRM_tools + Calibre 5 这一部分;我调用的命令是:
python3 kindle.py --cn --dedrm --cookie-file {cookie} {csrfToken}
输出内容如下,我下载2本后就手动暂停了。
Amazon open their bot check will sleep 3s Using default device serial Number: G090G105xxxxxxxxT (1/164)downloading SAT词汇词根+联想记忆法(乱序版).azw3 4691766 bytes SAT词汇词根+联想记忆法(乱序版).azw3 downloaded MobiDeDrm v1.0. Copyright © 2008-2020 The Dark Reverser, Apprentice Harper et al. Crypto Type is: 2 File is encoded with PID UMB5xxxxxT. Decrypting. Please wait . . . . . . . . . . . . . done (2/164)downloading 美国学生权威历史教材_美国历史(英汉对照)(经典珍藏版)(学生版)_ For School Use (1909) (English Edition).azw3 12096672 bytes 美国学生权威历史教材_美国历史(英汉对照)(经典珍藏版)(学生版)_ For School Use (1909) (English Edition).azw3 downloaded MobiDeDrm v1.0. Copyright © 2008-2020 The Dark Reverser, Apprentice Harper et al. Crypto Type is: 2 File is encoded with PID eatHxxxxx3. Decrypting. Please wait . . . . . done ^CTraceback (most recent call last):
可以看到
Decrypting. Please wait . . . . . . . . . . . . . done
就说明,DeDRM 了一本。你可以试试,还有疑问或遇到问题,可以贴一些输出的信息,只要在复制时,去掉一些关键消息(如:cookie、csrfToken、serial Number等)即可。amazon上默认设置kindle for mac客户端。
试过默认实体为 kindle pc以及kindle android、kindle ios都是下载的azw3文件。都一样的报错,不能dedrm。
我没有实体kindle阅读器。
报错结果如下
(2/17)downloading 某指南.azw3 11262281 bytes 某指南.azw3 downloaded MobiDeDrm v1.0. Copyright © 2008-2020 Crypto Type is: 2 Dedrm failed for 某指南.azw3: No key found in 2 PIDs tried
其他所有的书籍都是如此报错,解密的时候出错。
目前不支持非 kindle 的解密,只可以下载
@yihong0618
目前不支持非 kindle 的解密,只可以下载
好吧。谢谢。看来必须要有一个kindle实体阅读器才能解密了。这个应该是 https://github.com/noDRM/DeDRM_tools 需要这个加入对非kindle实体阅读器进行解密。
@yihong0618 好奇一下,没有 kindle 设备,不能用此工具完全自动化 DeDRM,需要用到以前的低版本 kindle for win/mac 和 (DeDRM)[https://github.com/noDRM/DeDRM_tools] 工具配合 ?
是的
现在分享一下,如何在m1 mac上下载dedrm kindle电子书,在你没有实际的kindle设备的情况下。(因为手边只有m1 mac)
走了很多弯路,但是最后一个成功了。最后没有用到此项目脚本,此项目的脚本是建立在你实际有一个kindle实体阅读器的情况下。 但还是感谢本项目作者。
简单来说
arm64 windows 11虚拟机安装kindle 1.26版本:https://keybase.pub/koumaza/Archive/kindle-for-pc-1-26-55076.exe
然后,修改注册表:
simply use regedit to add/change the "isKRFDRendererSupported" key to "false" in "HKEY_CURRENT_USER\Software\Amazon\Kindle\User Settings"). It will automatically open the Kindle app with KFX download disabled
然后,关闭kindle自动更新。重启kindle for pc,登陆,并且下载你需要的电子书。 然后,安装calibre 5 + dedrm插件 (https://github.com/noDRM/DeDRM_tools )。然后配置你的dedrm插件,选择kindle for pc自动导入key file。重启calibre 5. (arm64 windows 11运行x86的calibre 5不会报错,有内置微软x86模拟器,稳)
然后,找到你kindle上下载的电子书,后缀为 azw3文件,鼠标拖入 calibre 5,点击打开你的电子书,就会自动解密。然后,自己转换为epub文件,在任何阅读器上都可以直接阅读了。 Over。
弯路
设备型号不对,核心是需要关闭kfx文件格式。这里说的很明白。
1、m1 mac上解密失败,当然,因为目前dedrm工具只能解密非kfx格式。mac上kindle客户端都是支持kfx的,所以你需要低版本的kindle for mac 2、windows上解密失败。我用的arm64 windows 11跑在m1 mac parallels虚拟机里面。安装requirements.txt 环境时候遇到编译器问题,所以装了vs community 2022的arm64编译工具链。但是编译时候又出现缺少rust编译器的情况,又装了arm64 windows的rust编译器。然后继续安装工具链,但是在编译cryptography的时候出现openssl的错误。然后找到cryptography官网发现不支持arm64 windows,此路不通,不想自己去给cryptography重造车轮了。 3、在amd64 linux上也遇到和m1 mac一样的问题。
以上思路其实一开始就是不正确的,因为你没有解密需要的key。而本机安装kindle for pc能给你提供解密key file。或者说如果你有个kindle实体阅读器,机器码就是你解密的依据。我没有实体阅读器,只能走安装kindle for pc的思路。
闲聊
自己买的书,amazon说以后不给你看了,就不给你看了,买书曾花了不少钱的。说好的电子版永久可用呢?让用户费这么大劲。
Updated: 没有kindle 设备,intel-based mac(windows 思路类似) 可以参考 https://github.com/yihong0618/Kindle_download_helper/issues/22#issuecomment-1193113739
以后kindle 也全面转向 epub 了。
现在分享一下,如何在m1 mac上下载dedrm kindle电子书,在你没有实际的kindle设备的情况下。(因为手边只有m1 mac)
走了很多弯路,但是最后一个成功了。最后没有用到此项目脚本,此项目的脚本是建立在你实际有一个kindle实体阅读器的情况下。 但还是感谢本项目作者。
简单来说
arm64 windows 11虚拟机安装kindle 1.26版本:https://keybase.pub/koumaza/Archive/kindle-for-pc-1-26-55076.exe
然后,修改注册表:
simply use regedit to add/change the "isKRFDRendererSupported" key to "false" in "HKEY_CURRENT_USER\Software\Amazon\Kindle\User Settings"). It will automatically open the Kindle app with KFX download disabled
然后,关闭kindle自动更新。重启kindle for pc,登陆,并且下载你需要的电子书。 然后,安装calibre 5 + dedrm插件 (https://github.com/noDRM/DeDRM_tools )。然后配置你的dedrm插件,选择kindle for pc自动导入key file。重启calibre 5. (arm64 windows 11运行x86的calibre 5不会报错,有内置微软x86模拟器,稳)
然后,找到你kindle上下载的电子书,后缀为 azw3文件,鼠标拖入 calibre 5,点击打开你的电子书,就会自动解密。然后,自己转换为epub文件,在任何阅读器上都可以直接阅读了。 Over。
弯路
设备型号不对,核心是需要关闭kfx文件格式。这里说的很明白。
1、m1 mac上解密失败,当然,因为目前dedrm工具只能解密非kfx格式。mac上kindle客户端都是支持kfx的,所以你需要低版本的kindle for mac 2、windows上解密失败。我用的arm64 windows 11跑在m1 mac parallels虚拟机里面。安装requirements.txt 环境时候遇到编译器问题,所以装了vs community 2022的arm64编译工具链。但是编译时候又出现缺少rust编译器的情况,又装了arm64 windows的rust编译器。然后继续安装工具链,但是在编译cryptography的时候出现openssl的错误。然后找到cryptography官网发现不支持arm64 windows,此路不通,不想自己去给cryptography重造车轮了。 3、在amd64 linux上也遇到和m1 mac一样的问题。
以上思路其实一开始就是不正确的,因为你没有解密需要的key。而本机安装kindle for pc能给你提供解密key file。或者说如果你有个kindle实体阅读器,机器码就是你解密的依据。我没有实体阅读器,只能走安装kindle for pc的思路。
有帮助的教程 https://www.cloudwards.net/remove-drm-from-kindle-books/
闲聊
自己买的书,amazon说以后不给你看了,就不给你看了,买书曾花了不少钱的。说好的电子版永久可用呢?让用户费这么大劲。
废了半天劲MAC/Win都试了 搞不定404/503都报 还是用老哥办法手动搞定
您好大佬,请问这样应该如何获取cookies呀?之前提到的在‘网络’里找cookies的方法似乎没有办法使用了。
您好大佬,请问这样应该如何获取cookies呀?之前提到的在‘网络’里找cookies的方法似乎没有办法使用了。
safari如果没有ajax,可以停用缓存试试
学习了!
按照这个终于成功了,只需要按主页改下网址就行了,太赞了
首先谢谢 大佬们的开源贡献!
基于我的环境和编程背景,我想补充下,没有 Python 经验的程序员,如何使用该开源库。
环境:macOS Catalina 10.15.7 我的编程背景:Android 开发者,使用 Java 和 Kotlin。「 Python3 学过基础语法,没用 Python3 写过项目 」 Kindle:我有一台 paperwhite 2
针对 README.md 的教程,自己如何在 [ 命令行 ] 的环境下,来下载电子书?
~/Downloads
) ;再安装依赖cd ~/Downloads/Kindle_download_helper ; pip3 install -r requirements.txt --user
python3 kindle.py --cn --cookie-file ./cookie_file.txt your_csrf_Token
可能的疑问:
--user
,可能是权限的问题,于是我按照命令行输出的提示,添加的,就安装依赖成功了;python3 kindle.py ***
)。----------------------------- 分割线 -----------------------------
受老哥(#41 )自动化的启发,如果你有 Shell 脚本的知识,也可以自行写个如下半自动化参考脚本;但前提,依然是你得准备好 cookie 和 csrf_token 。
PS:大佬,能否考虑保留这个 issues 一段时间,也许能帮到一部分人 :)