Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make README.md more friendly for Non-Python programer, add cookie pla… #77

Closed
wants to merge 1 commit into from

Conversation

chongiscool
Copy link
Contributor

@chongiscool chongiscool commented Jul 23, 2022

虽然想尽可能写的有好些,但感觉写的有点乱乱的,还请大佬review时,直率地提意见(我是新手 PR),我可以多次修正,使尽可能简明、不会产生歧义/误会。for #76

我有几个点不太确定,想顺便获得求证:

  1. --pdoc,是下载用户自己上传到 Kindle 仓库中的文件嘛?
  2. 我在第一次下载完电子书后,我尝试过在生成readme,结果报错了;于是我才问,想要生成「kindle阅读之旅」,一定要在第一次直接加上 --readme嘛,如下?
# 新cookie和csrfToken
python3 kindle.py --cn --readme --cookie ${cookie} ${csrfToken} 

output

get all books error: AUTHENTICATION_ERROR
It will take some time to get all PDOC books list, please wait
get all books error: AUTHENTICATION_ERROR
Traceback (most recent call last):
  File "kindle.py", line 644, in <module>
    kindle.make_kindle_stats_readme()
  File "kindle.py", line 422, in make_kindle_stats_readme
    first_ebook, first_pdoc = ebooks[-1], pdocs[-1]
IndexError: list index out of range

@yihong0618
Copy link
Owner

yihong0618 commented Jul 23, 2022

  1. 不是,就是生成一个你读完书的 READMW
  2. 感谢,我晚上看一下

你可能从来没用过 kindle 的推送,所以 out of index 了


### 3.2 自动获取 cookie

> 说明:高级用法,如果你不懂,请忽略!
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

这句可以去掉

@yihong0618
Copy link
Owner

如果专门是为新手的介绍我觉得可以这样

用游标隐藏,点开显示。写上你 issue 中的内容
可以尽量不更改原来的 README 那样大家看的方便些。

@yihong0618
Copy link
Owner

具体的我晚上写个例子。

@chongiscool
Copy link
Contributor Author

具体的我晚上写个例子。

如果专门是为新手的介绍我觉得可以这样

用游标隐藏,点开显示。写上你 issue 中的内容 可以尽量不更改原来的 README 那样大家看的方便些。

具体的我晚上写个例子。

我也感觉越写越虚: (

用「 游标隐藏 」这个功能我还没用过,那到时候看看你的例子,谢谢哈:)

@yihong0618
Copy link
Owner

我的建议是尽量不去改变原有 README 格式。

类似

Mac 新手指南

首先谢谢 大佬们的开源贡献!

基于我的环境和编程背景,我想补充下,没有 Python 经验的程序员,如何使用该开源库。

环境:macOS Catalina 10.15.7
我的编程背景:Android 开发者,使用 Java 和 Kotlin。「 Python3 学过基础语法,没用 Python3 写过项目
Kindle:我有一台 paperwhite 2

针对 README.md 的教程,自己如何在 [ 命令行 ] 的环境下,来下载电子书?

  • 第一步:clone 仓库到下载目录(~/Downloads) ;再安装依赖 cd ~/Downloads/Kindle_download_helper ; pip3 install -r requirements.txt --user
  • 第二步:打开 国内(amazon.cn)电子书所有内容(需要登录自己账户)的页面,按 F12
    • 获取 cookie :Network -> Fetch/XHR -> Refresh(Cmd + R) -> 点击任意一个 ajax -> Headers -> Request Headers -> Cookie -> 右键复制它 -> 在 Kindle_download_helper 目录中,新建 cookie_file.txt 来保存 cookie 。
    • 获取 CSRF token : Headers 右边 -> Payload -> csrfToken -> 右键复制它。
  • 第三步:下载书籍 python3 kindle.py --cn --cookie-file ./cookie_file.txt your_csrf_Token

可能的疑问:

  1. 为什么安装依赖要加--user,可能是权限的问题,于是我按照命令行输出的提示,添加的,就安装依赖成功了;
  2. 你应该始终,在 Kindle_download_helper 目录下,执行命令(python3 kindle.py ***)。
  3. cookie 保存在 Kindle_download_helper/cookie_file.txt 中,方便命令行输入 和 cookie的更新

----------------------------- 分割线 -----------------------------

受老哥(#41 )自动化的启发,如果你有 Shell 脚本的知识,也可以自行写个如下半自动化参考脚本;但前提,依然是你得准备好 cookie 和 csrf_token 。

#!/bin/bash

cd ~/Downloads 
git clone https://github.com/yihong0618/Kindle_download_helper.git
cd ~/Downloads/Kindle_download_helper 
pip3 install -r requirements.txt --user
# save cookie in ./cookie_file.txt
python3 kindle.py --cn --cookie-file ./cookie_file.txt your_csrf_Token

image

@chongiscool
Copy link
Contributor Author

行,我试试

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants