如今的大学生应该都懂刷课的痛吧,不知道什么时候出现了一堆莫名其妙的网课,正常看都不一定能有时间看完,但这网课又偏偏占平时分,咸鱼需要它及格,卷王需要它刷绩点,所以基本是人人都需要刷网课。
目前看来,刷网课的方式主要有 Tampermonkey 脚本、Python 脚本、Chrome 插件等,效率和实现方式各不相同。下面以各个网站为例,讲讲我推荐的几种刷课方式。特定的方式不一定只适用于特定的网站,有很多通用的方法可以都试一下。
不过这种选题,啥时候没了也说不定,且看且珍惜吧。
知到 / 智慧树 - Tampermonkey
对于这个网课,我一般使用 Tampermonkey 脚本。
Tampermonkey,俗称油猴,是各大主流浏览器上的一个脚本管理器扩展,对 Google Chrome、Firefox、Microsoft Edge Chromium、Microsoft Edge Legacy(EdgeHTML)和 Safari 都有支持,可以在 Chrome Web Store 等官方应用店下载,各大国产 Chromium 内核浏览器也可以使用提取的 crx 文件来安装扩展。它的原理大致是在特定的网页上加载 JavaScript,从而实现网页原本不具有的功能。如果觉得它好用,也不妨给它捐助。你也可以使用 Violentmonkey 和 AdGuard 等类似的能加载脚本的插件。
安装之后,点击 Tampermonkey 图标,可以使用 “新建脚本” 来自己写一个脚本,或者在此处粘贴你从 GitHub 等地获取的脚本,或者使用 “获取脚本” 来从网上直接下载脚本。我建议从 Greasy Fork 搜索到你需要的脚本,比如直接搜索 “知到” 就可以找到适用于它的脚本,然后点击 “安装此脚本” 即可安装在 Tampermonkey 中。大部分脚本都遵循一定的开源协议,这意味着你可以随意使用或者修改它的源代码。脚本是只在特定的网站中有效的,Tampermonkey 右下角标的数字,就是在这个页面启用的脚本数。点击它,可以控制适用于该页面脚本的开关。
我使用的插件能够实现播完自动切换课程,自动 1.5 倍速,自动静音播放,还可以打开考试之后自动搜题(可以用来赶作业,不过正确率实在变态所以慎用)。值得注意的是,它还有模拟点击延迟的功能,以模拟真正的人工操作。 这是它的 Greasy Fork 链接。
微伴安全微课 - Python + Tampermonkey
这似乎是我们每个暑假都必有的网课。它包含大量的 JavaScript 等元素组成的互动式页面(而不是单纯的视频)。但是它的部分课程有一个弱点:浏览器可以直接发送完成请求,来完成某个课程。所以,对于这部分,我使用 Python 脚本,直接获取课程列表并发送完成请求,就可以以极快的速度刷完了。
我这里所说的 Python 脚本,指的是通过 urllib 库完成的操作,将自己伪装成一个浏览器,可以跳过某些步骤而直接进行我们想要的操作,因而效率一般非常高。比如这个地方,我们就可以跳过网课的浏览阶段,在获取课程列表、种类列表、课时列表之后,可以得到每个课时的 ID,然后将它填进一个 JSON 文件,将它用一个 POST 请求发送给完成网课对应的地址,于是服务器就以为我们完成了网课。写过爬虫的应该都明白。还有通过 Selenium,操纵一个真正的浏览器完成操作的方式,在此不表(因为我根本不会)。
当然,不明白也没关系,因为我已经 fork 了一份别人的代码,做了一些改进,应该可以用了,地址在这里。经过实测,大概能在五分钟内刷完 200 + 节网课。具体使用方法请参照它的 GitHub 页面和应用内指引。
刚刚我们提到只有部分课程有此弱点,那其他的课程呢?我摸索了一个下午,由于水平太菜,愣是没有找到它的规律。不过还有一个 Tampermonkey 插件,它也可以刷这个网课。点击这里转到 Greasy Fork 页面。它的基本原理也是尝试直接发送完成请求,但是对于不能这么办的课时,你打开后,它会尝试点击屏幕上的按钮,直到提示完成。效率有点低,但是毕竟不用全程都手动点了对吧。
另外,《新大学英语视听说课程》配套平台 “iSmart” 也可以使用 Python 脚本刷课。离谱的是,它的答案会传到本地,然后在本地验证正误。可以使用 Mufanc/iSmartAuto2 搭配 iSmart 客户端的调试模式刷课,该工具还会自动生成学习时间。考虑到这个系统似乎是外包给天学网的,不知道天学网的课程是否能使用相似方法刷。
雨课堂(试题) - 浏览器插件
这里我隆重推荐一款网页端的搜题软件,“划词搜题”,它能搜出绝大部分题目。
只需要选中你需要搜的题的题干,插件会自动弹出搜题按钮。点击那个按钮,它就会为你找到对应的题目。
美中不足的是没有解析,毕竟很多时候搜题只是为了想学点知识。
中国大学 MOOC - 手机 “息屏听剧” 功能或 Android 模拟器
有一些网课平台的课程,在电脑端需要手动切换课时或者点击播放,而在手机端却可以连续播放。我们利用这一特性,使用手机实现连续听课;考虑到锁屏后容易中断的特性,可以使用机型自带的 “息屏听剧” 等功能,让锁屏时也不停止播放。
你也可以使用电脑端的 Android 模拟器,如各种手游模拟器,运行网课应用,就相当于有一部手机在挂网课了。
We Learn 随行课堂 - 直接看源代码
写在最后面是因为这个完全没有技术含量。页面加载后,答案就会直接显示在浏览器 DevTools 的 “元素” 页面。这证明答案是直接传到本地,然后在本地完成验证的,而且还选了一种十分拙劣的方式。怎么说呢,感觉这个是故意而为之……
对于 Chromium 内核浏览器,在 We Learn 学习页面打开 Dev Tools(Firefox 请自行探索),即可在 “元素” 选项卡找到答案。
写在最后
使用任何刷课插件都是有风险的,如果老师或者平台愿意查,应该都能查出来,尤其是一秒钟好几节课那种脚本。对于参照本文而产生的任何后果,作者概不负责。
请认真对待线上考试等严肃场景!只有要求看但实际上也许并不是这么有效的课程,我才推荐使用如此的特殊方法刷课。
对于大部分网站,Tampermonkey 都有脚本支持,但很多年久失修的脚本容易失效,敬请注意。也可以在 GitHub 搜索网站名,也可能有人会做刷课脚本。