⭐ 觉得有帮助的朋友可以给个Star
20241021更新通知: 感谢sz134055提交代码PR #360,添加了对题库答题的支持
git clone --depth=1 https://github.com/Samueli924/chaoxing
cd chaoxing
pip install -r requirements.txt
或使用 pip install .(通过 pyproject.toml 安装依赖)
python main.py
复制config_template.ini文件为config.ini文件,修改文件内的账号密码内容
python main.py -c config.ini
python main.py -u 手机号 -p 密码 -l 课程ID1,课程ID2,课程ID3...(可选) -a [retry|ask|continue](可选)
Tips:
如果已安装低版本 Python 推荐使用uv运行:
uv run --python 3.13 main.py
使用配置文件运行 :
uv run --python 3.13 main.py -c config.ini
./chaoxing.exe -c config.ini./chaoxing.exe -u "手机号" -p "密码" -l 课程ID1,课程ID2,课程ID3...(可选) -a [retry|ask|continue](可选)构建Docker镜像
docker build -t chaoxing .
运行Docker容器
# 直接运行(将使用默认配置模板)
docker run -it chaoxing
# 使用自定义配置文件运行
docker run -it -v /本地路径/config.ini:/config/config.ini chaoxing
配置说明
/config/config.ini 的配置文件config_template.ini 复制到该位置作为模板在你的配置文件中找到[tiku],按照注释填写想要使用的题库名(即provider,大小写要一致),并填写必要信息,如token,然后在启动时添加-c [你的配置文件路径]即可。
题库会默认使用根目录下的config.ini文件中的配置,所以你可以复制配置模板(参照前面的说明)命名为config.ini,并只配置题库项[tiku],这样即使你不填写账号之类的信息,不使用-c参数指定配置文件,题库也会根据这个配置文件自动配置并启用。
对于那些有章节检测且任务点需要解锁的课程,必须配置题库。
提交模式与答题
不配置题库(既不提供配置文件,也没有放置默认配置文件config.ini或填写要使用的题库)视为不使用题库,对于章节检测等需要答题的任务会自动跳过。
题库覆盖率:搜到的题目占总题目的比例
提交模式submit值为
true:会答完题,达到题库题目覆盖率提交,没达到只保存,正确率不做保证。false:会答题,但是不会提交,仅保存搜到答案的,随后你可以自行前往学习通查看、修改、提交。任何填写不正确的submit值会被视为false题库名即
answer.py模块中根据Tiku类实现的具体题库类,例如TikuYanxi(言溪题库),在填写时,请务必保持大小写一致。
在配置文件的 [common] 部分,可以通过 notopen_action 选项配置遇到已关闭任务点时的处理方式:
retry (默认): 遇到关闭的任务点时尝试重新完成上一个任务点,如果连续重试 3 次仍然失败 (或未配置题库及自动提交) 则停止ask: 遇到关闭的任务点时询问用户是否继续。选择继续后会自动跳过连续的关闭任务点,直到遇到开放的任务点continue: 自动跳过所有关闭的任务点,继续检查和完成后续任务点也可以通过命令行参数 -a 或 --notopen-action 指定处理方式,例如:
python main.py -a ask # 使用询问模式
在配置文件的 [common] 部分,可以通过下面两个选项控制章节学习次数功能:
add_learning_count = false:是否在完成刷课任务后,继续对课程章节执行学习次数增加target_count = 100:章节学习次数的目标总次数,程序会轮询课程章节直到达到该次数当前实现会先完成所选课程的任务点,再统一执行章节学习次数增加流程。如果开启了 add_learning_count,它会作为刷课完成后的追加步骤执行,而不是独立模式。
外部通知配置说明
这功能会在所有课程学习任务结束后,或是程序出现错误时,使用外部通知服务推送消息告知你(有用但不多)
与题库配置类似,不填写视为不使用,按照注释填写想要使用的外部通知服务(也是provider,大小写要一致),并填写必要的url
51 followers · starred Sep 2026
18 followers · starred Nov 2025
98 followers · starred Nov 2025
24 followers · starred Jun 2025
⭐ 觉得有帮助的朋友可以给个Star
20241021更新通知: 感谢sz134055提交代码PR #360,添加了对题库答题的支持
git clone --depth=1 https://github.com/Samueli924/chaoxing
cd chaoxing
pip install -r requirements.txt
或使用 pip install .(通过 pyproject.toml 安装依赖)
python main.py
复制config_template.ini文件为config.ini文件,修改文件内的账号密码内容
python main.py -c config.ini
python main.py -u 手机号 -p 密码 -l 课程ID1,课程ID2,课程ID3...(可选) -a [retry|ask|continue](可选)
Tips:
如果已安装低版本 Python 推荐使用uv运行:
uv run --python 3.13 main.py
使用配置文件运行 :
uv run --python 3.13 main.py -c config.ini
./chaoxing.exe -c config.ini./chaoxing.exe -u "手机号" -p "密码" -l 课程ID1,课程ID2,课程ID3...(可选) -a [retry|ask|continue](可选)构建Docker镜像
docker build -t chaoxing .
运行Docker容器
# 直接运行(将使用默认配置模板)
docker run -it chaoxing
# 使用自定义配置文件运行
docker run -it -v /本地路径/config.ini:/config/config.ini chaoxing
配置说明
/config/config.ini 的配置文件config_template.ini 复制到该位置作为模板在你的配置文件中找到[tiku],按照注释填写想要使用的题库名(即provider,大小写要一致),并填写必要信息,如token,然后在启动时添加-c [你的配置文件路径]即可。
题库会默认使用根目录下的config.ini文件中的配置,所以你可以复制配置模板(参照前面的说明)命名为config.ini,并只配置题库项[tiku],这样即使你不填写账号之类的信息,不使用-c参数指定配置文件,题库也会根据这个配置文件自动配置并启用。
对于那些有章节检测且任务点需要解锁的课程,必须配置题库。
提交模式与答题
不配置题库(既不提供配置文件,也没有放置默认配置文件config.ini或填写要使用的题库)视为不使用题库,对于章节检测等需要答题的任务会自动跳过。
题库覆盖率:搜到的题目占总题目的比例
提交模式submit值为
true:会答完题,达到题库题目覆盖率提交,没达到只保存,正确率不做保证。false:会答题,但是不会提交,仅保存搜到答案的,随后你可以自行前往学习通查看、修改、提交。任何填写不正确的submit值会被视为false题库名即
answer.py模块中根据Tiku类实现的具体题库类,例如TikuYanxi(言溪题库),在填写时,请务必保持大小写一致。
在配置文件的 [common] 部分,可以通过 notopen_action 选项配置遇到已关闭任务点时的处理方式:
retry (默认): 遇到关闭的任务点时尝试重新完成上一个任务点,如果连续重试 3 次仍然失败 (或未配置题库及自动提交) 则停止ask: 遇到关闭的任务点时询问用户是否继续。选择继续后会自动跳过连续的关闭任务点,直到遇到开放的任务点continue: 自动跳过所有关闭的任务点,继续检查和完成后续任务点也可以通过命令行参数 -a 或 --notopen-action 指定处理方式,例如:
python main.py -a ask # 使用询问模式
在配置文件的 [common] 部分,可以通过下面两个选项控制章节学习次数功能:
add_learning_count = false:是否在完成刷课任务后,继续对课程章节执行学习次数增加target_count = 100:章节学习次数的目标总次数,程序会轮询课程章节直到达到该次数当前实现会先完成所选课程的任务点,再统一执行章节学习次数增加流程。如果开启了 add_learning_count,它会作为刷课完成后的追加步骤执行,而不是独立模式。
外部通知配置说明
这功能会在所有课程学习任务结束后,或是程序出现错误时,使用外部通知服务推送消息告知你(有用但不多)
与题库配置类似,不填写视为不使用,按照注释填写想要使用的外部通知服务(也是provider,大小写要一致),并填写必要的url
51 followers · starred Sep 2026
18 followers · starred Nov 2025
98 followers · starred Nov 2025
24 followers · starred Jun 2025