Skip to content

Commit

Permalink
new login method
Browse files Browse the repository at this point in the history
  • Loading branch information
VermiIIi0n committed May 13, 2022
1 parent a984668 commit 32352a2
Show file tree
Hide file tree
Showing 4 changed files with 106 additions and 94 deletions.
25 changes: 15 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,23 @@
## ZHS Fucker 食用指北

#### WTF?
这是一个 _Python3_ 的自动脚本, 用于自动刷智慧树课堂课程(翻转课和知到的共享学分课), 为您节约有限的生命.
_*起初仅为翻转课而写, 现在也支持知到的共享学分课_
这是一个 _Python3_ 的自动脚本, 用于自动刷智慧树课堂课程, 为您节约有限的生命.

**Features**
* 支持翻转课与知到共享学分课
* 自动回答弹题
* 设定时限
* 射后不管, 无需交互
***
#### WHY?
自从智慧树的翻转课("hike"开头的域名)播放页面用了个窒息的 _JavaScript_ 混淆之后, 各种前端的脚本都没法用了.
因为它会检查 DevTools 是否打开, 如果开了就无法继续运行, 要分析的话由于混淆, 解读很麻烦.
自从智慧树的翻转课(hike)播放页面用了个窒息的 _JavaScript_ 混淆之后, 各种前端的脚本都没法用了.
因为它会检查 _DevTools_ 是否打开, 如果开了就无法继续运行, 要分析的话由于混淆, 解读很麻烦.
于是我打算直接抄家, 入它后端(*), 所以便有了该脚本. (虽然最后还是被逼着反混淆了前端代码...)
***
#### 重要更新
v1.X -> v2.0, 有以下重要改变
-> v2.0.0:
1. 新增 知到 API(studyservice-api) 的支持, 参考了 [luoyily](https://github.com/luoyily/zhihuishu-tool)[zhixiaobai](https://github.com/zhixiaobai/Python-zhihuishu) 的 repo
2. 不再需要 _selenium_ 来登入, 使用 _selenium_ 的版本将移入其他分支, 后续应该很少更新了
2. 移除依赖 _selenium_ , 使用 _selenium_ 的版本将移入其他分支, 随缘更新
3. 新增依赖 _pycryptodome_
***
#### 准备工作
Expand Down Expand Up @@ -79,7 +84,7 @@ fucker.cookies = {}
登入之后就可以开干,例如您想要干 ID 为 `"114514"` 的课程,可以这样做:
```bash
cd fuckZHS
python main.py -c 114514
python main.py -c 114514 # -c 缺省将需要交互输入课程 ID
# 又或者可以限制学习25分钟
python main.py -c 114514 -l 25
# 遇到问题想开 debug 模式, 顺带加个代理?
Expand All @@ -88,7 +93,7 @@ python main.py -c 114514 -d --proxy http://127.0.0.1:2333
python main.py -c 114514 -v 4060 9891
```
什么?不知道课程 ID 或视频 ID? 进入课程界面就可以在网址里看到了.
_*课程 ID `courseId``recruitAndCourseId` 参数, 如果为后者, 视频 ID 将被无视._
_*课程 ID 为网址中的 `courseId`(翻转课)`recruitAndCourseId`(共享学分课) 参数_
_**更多选项请使用 `-h` 查看._
_***优先级: 命令行 > 配置文件_

Expand Down Expand Up @@ -116,9 +121,9 @@ fucker.fuckVideo(courseId, fileId) # 只干一个视频
* 登入失败
* 检查您的账号密码是否有误
* 先用浏览器登入一次看看, 可能您的 IP 地址被认为是异地了, 需要短信验证
* 请求响应: “需要滑块验证” (触发原因不明)
* 请求响应信息: “需要滑块验证” (触发原因不明)
* 浏览器登入后手动过一次验证
* 请求响应: “不明服务器故障”
* 请求响应代码: -1
* 某些请求被认为内容不合法了, 因为我测试例很少, 可能有些特例覆盖不全, 请把错误日志贴上, 开个 issue, 我尽力解决
* 语法错误
* 喂, 伙计, _Python_ 版本对了没?
Expand Down
Loading

0 comments on commit 32352a2

Please sign in to comment.