2022智慧树刷课工具最新可用版-FxxkingZHS

2022智慧树刷课工具最新可用版-FxxkingZHS

2022智慧树刷课工具最新可用版-FxxkingZHS|KALI LINUX中文論壇
2022智慧树刷课工具最新可用版-FxxkingZHS
此内容为免费资源,请登录后查看
0
免费资源
WARNING!
以下部分内容转自GitHub,在结尾附有原链接。

自从智慧树的校内学分课(i.e. hike)播放页面用了个窒息的 JavaScript 混淆之后, 大部分前端的脚本都没法用了.
因为它会检查 DevTools 是否打开, 如果打开了就无法继续运行, 要分析的话由于混淆, 解读很麻烦.

这是什么?

这是一个 Python3 的自动脚本, 用于自动刷智慧树课堂课程, 为您节约有限的生命.

特征

  • 支持校内学分课与知到共享学分课
  • 自动回答弹题
  • 设定时限
  • 无需交互

运行环境

  • Python3.10 及以上版本(或自行改写旧版不兼容的语法)
  • requests
  • pycryptodome 或其等价替代
  • websockets
  • Pillow>=8.1.1
  • 执行 pip install -r requirements.txt 即可安装依赖

如何使用

因登陆验证改变目前仅有二维码登陆可用

本块分为

  1. Ultra Quick Start: 执行 python main.py
    • 仅以交互输入信息, 除非开 DEBUG 模式否则不留任何敏感记录
  2. Login: 输入账号与密码
    • 使用配置文件
    • 使用命令行参数
  3. Fxxking: 开始
    • 使用命令行参数
    • 拉清单
    • 参数列表
  4. API 简易文档: 用于单独使用模块

*如果非常用地登入会需要短信验证, 您应该先用浏览器登入一次, 以让您的所在地列入白名单.
**信息优先级: 命令行 > 配置文件 > 交互输入

使用配置文件

配置文件 config.json 中有以下字段:

{
  "username": "",
  "password": "",
  "qrlogin": true,
  "proxies": {},
  "logLevel": "INFO",
  "qr_extra": {
        "show_in_terminal": false,
        "ensure_unicode": false
    },
  "push": {
    "enable": false,
    "token": "",
  }
}
  • username: 账号
  • password: 密码
  • qrlogin: 启用二维码登陆, 方便在服务器上部署, 优先级高于账号密码
  • proxies: 代理, 可留空, 在 Windows 上还可解决 Clash 等代理造成的证书错误, 详见 常见问题
  • logLevel: 日志等级, 可选 NOTSET DEBUG INFO WARNING ERROR CRITICAL
  • qr_extra: QR 相关配置
    • show_in_terminal: 将二维码打印至终端
    • ensure_unicode: 仅使用 Unicode 字符打印二维码
  • push: 基于 pushplus 的推送服务
    • enable: 启用推送
    • token: 推送 token

填入账号密码即可无干预自动登入 当前失效
*配置文件如果没有的话会在 main.py 执行时自动创建.

使用命令行参数登入

python main.py -u <username> -p <password>
python main.py -q
  • -u --username: 账号
  • -p --password: 密码, 要注意密码将会明文留在记录中, 故不推荐使用 -p 
  • -q --qrlogin : 启用二维码登陆

Fxxking

以下假设您已经在配置文件中输入必要信息
*信息优先级: 命令行 > 配置文件 > 交互输入

cd fuckZHS
python main.py # 刷所有课
# 只刷课程 ID 为 114514 的课
python main.py -c 114514
# 想秒过可以设个很高的 SPEEEED
python main.py -s 444 # 速度很快
# 又或者可以限制每节课学习25分钟
python main.py -c 114514 -l 25
# 遇到问题想开 debug 模式, 顺带加个代理?
python main.py -c 114514 -d --proxy http://127.0.0.1:2333
# 又比如您想只看某几个视频, 那您可以使用 -v 传入视频 ID
python main.py -c 114514 -v 4060 9891

*课程 ID 为网址中的 courseId(校内学分课) 或 recruitAndCourseId(共享学分课) 参数
**更多选项请使用 -h 查看.

课程列表

使用 --fetch 参数可从服务器获得所有课程列表, 存储到 execution.json 里, 您可以删去不想完成的课程
当该文件存在且没有指定课程 ID 时, 先看看这个里面有没有写着课程 ID
*清单中 id 参数是必须的, 想额外拉清单时请注意
**修改时请注意 JSON 语法, 不然 Exceptions 会一下突开到脸上

python main.py --fetch

清单示例:

[
    {
        "name": "中国近现代史",
        "id": "42"
    },
    {
        "name": "思想道德与法治",
        "id": "1919"
    }
]

命令行参数列表

  • -c--course: 课程 ID, courseId 或 recruitAndCourseId, 可输入多个
  • -v--videos: 视频 ID, fileId 或 videoId, 可输入多个
  • -u--username: 账号
  • -p--password: 密码
  • -q--qrlogin:
  • -s--speedPOWERR AND SPEEEEED! 指定播放速度, 想要秒过可以设个很高的值(e.g. 644), 但不推荐. 默认为浏览器观看能到的最大值
  • -t--threshold: 完成时播放百分比, 高于该值视作完成
  • -l--limit: 单节课的时限, 如果您看得上内点习惯分就用吧
  • -d--debug: 调试级日志记录, 会记录请求到日志 (可能包含账号密码, 别乱分享, 当心被盒武
  • -f--fetch: 获取课程清单并存入 execution.json 文件
  • --show_in_terminal: 将二维码打印至终端
  • --proxy: 代理设置, 本来用来调试的(e.g. http://127.0.0.1:8080)
  • -h --help: 显示帮助

运行示例如下:

图片[1]|2022智慧树刷课工具最新可用版-FxxkingZHS|KALI LINUX中文論壇

原文地址:https://github.com/VermiIIi0n/fuckZHS#features

© 版权声明
THE END
喜欢就支持一下吧
点赞525 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容