基于python-pyautogui实现的学习通阅读时长类刷课小助手
起因是学校的的某阅读类通识选修课竟要求在其他课程或考试几乎全满的前提下要求选修该课程的大学牲在一个月内搞定学习通上6x280分钟的阅读任务(占比60%,各个模块满分10分,每个模块150min-179方可得到可怜的6分),对于我这种文盲,所谓的“经典”是不可能看的,本人不希望自己的时间被所谓的“经典阅读”所支配,故在直接挂着网页刷时长无效的前提下,出此下策。阅读本应是学生自己的事情,学生的时间应由他们自己管理,学生的未来应由他们自己投资,本应如此。你们这么在意这个学分系统干什么啊?它会把学生的付出给异化调的懂吗?
经过测试,十分钟内,在不使用脚本的情况下滑动网页1分钟,其余9分钟挂机闲置,时长积分只加了1,与使用脚本的效果相去甚远。
获取测试结果的积分界面如下,仅供参考:
原理和用法很简单,课程的主要任务是刷阅读时长。将阅读过程简化,省略知识从网页进入脑子的“人机交互”过程,你在阅读/刷时长时无非就是一个在阅读界面划来划去的过程。
那用pyautogui
让计算机在阅读网页上自己划来划去不就可以了☝🤓
废话不多说,下面讲具体用法:
首先克隆仓库
git clone https://github.com/virtualguard101/web-read-tool.git
cd web-read-tool
安装依赖库
pip install -r requirements.txt
随后准备好在学习通上需要刷阅读时长的课程的任意一个阅读界面,在终端运行命令
python lesson_brush.py
由于添加了shebang
,在liunx系统的bash上也可以在给脚本添加权限后直接执行:
chmod +x lesson_brush.py
./lesson_brush.py
按照终端提示输入想要运行的时长,随后快速切回阅读界面,看着界面自己来回滚动即可
想要终止运行,唤出终端ctrl
+C
即可
本项目为作者即兴发挥,当前十分简陋,仅仅只由一个脚本与一个日志文件构成(日志由脚本生成,主要作用是记录运行每次脚本运行的时长,方便计算刷课总时长)
在使用工具的时候请不要关闭命令窗口,否则程序会停止运行
在运行脚本时务必保证当前页面为需要刷时长的阅读界面,当前版本不支持后台运行
阅读界面请选取独立网页型的阅读界面,尽量不要选择将阅读窗口内嵌于网页中的阅读界面,如下图这种:
自动点击的参数根据设备的不同需要自行更改。当然,不更改理论上应该不会影响阅读时长的记录
另外在一个阅读界面运行一段时间后(建议40min左右),最好切换到另一个,否则可能出现刷课无效的情况
日志记录的时长与实际效果通常有所差异,请以脚本实际运行结果为准
初始化项目功能
添加日志功能
修复时长记录的逻辑错误
切换输入单位,从秒(s)改为分钟(min)
添加自动点击“加载更多”功能
README中的背景介绍为项目背景演绎,切勿当真
本项目仅供学习参考, 请勿用于非法用途,如有下载需求,请在下载后24h内删除。