wang-ke

v2026.09.24

Auto mouse activity keeper for online course platforms. Prevents video pause caused by mouse-leave detection on platforms like 学习通/雨课堂/智慧树/中国大学MOOC. Triggers when: Need to keep online course videos playing without manual mouse movement, platform pauses video when mouse leaves the player area, or need unattended course playback. Commands: - /网课 - Start default mouse keeper (move mouse every 30s) - /网课 start [interval] - Start with custom interval (seconds) - /网课 stop - Stop mouse keeper - /网课 status - Check if running - /网课 browser - Directly control browser via Selenium (no plugin needed) - /网课 click - Click mode (periodically click play button area) /wangke - English command Capabilities: Cross-platform mouse micro-movement (pyautogui/pynput), direct browser control via Selenium (simulates mouse events on video element, auto-resumes paused video), configurable interval, CLI background execution, anti-detection stealth mode, emergency stop (Ctrl+C or move mouse to corner), supports Windows/macOS/Linux

GitHub
Install command
npx skhub add cycleuser/wang-ke
Markdown
SKILL.md

Safety Rules

参见 _shared/core/safety-rules.md — 所有安全规则从共享层加载。

关键补充:

  • 仅用于保持自有账号的网课播放活跃,不得用于绕过考试监考或刷课作弊
  • 脚本运行时鼠标会自动移动,不要同时操作电脑,紧急停止:Ctrl+C 或将鼠标快速移到屏幕角落
  • 不绕过人脸识别、不自动答题、不伪造学习记录,仅保持播放不暂停

网课助手 (WangKe / Online Course Mouse Keeper)

网课平台(学习通、雨课堂、智慧树、中国大学MOOC等)普遍有"鼠标离开视频区域就暂停"的机制。 这个技能通过定时微移鼠标或模拟点击,让平台以为用户一直在页面上,从而保持视频持续播放。

Quick Commands

Command说明 / Description
/网课启动默认模式(每30秒微移鼠标一次)
/网课 start [间隔秒]自定义间隔启动
/网课 stop停止
/网课 status查看运行状态
/网课 browser直接控制浏览器(Selenium,无需插件)
/网课 click点击模式(定时点击播放区域)
/wangkeEnglish command

三种方案

方案一:直接控制浏览器(推荐)

用 Selenium 直接控制浏览器,在网页层面模拟鼠标移动和点击。不需要装任何浏览器插件,比 pyautogui 精准(直接操作 video 元素),不需要手动安装油猴脚本。

python3 scripts/browser_keeper.py --url "https://mooc1.chaoxing.com/..."
python3 scripts/browser_keeper.py --url "https://..." --interval 10

特点:

  • 直接在 video 元素上模拟 mousemove,平台以为鼠标一直在播放区域
  • 自动检测视频是否暂停,暂停了自动调 video.play() 恢复
  • 自带反检测:隐藏 navigator.webdriver、移除自动化标记
  • 可指定 URL 自动打开,也可手动在浏览器里导航

方案二:Python 系统鼠标控制

用 pyautogui 控制系统鼠标,每隔 N 秒微移一次。适用于任何平台,不限于浏览器。

python3 scripts/mouse_keeper.py --interval 30

特点:

  • 鼠标每次只移动 1-2 像素然后移回原位,不影响你看屏幕
  • 可配置间隔时间(默认 30 秒)
  • Ctrl+C 或鼠标移到屏幕角落紧急停止
  • 适用范围最广,但对"标签页失焦暂停"无效(需配合浏览器方案)

方案三:油猴脚本

在浏览器层面模拟鼠标移动事件,不需要额外装 Python。需要先安装 Tampermonkey 浏览器插件。

用 /网课 tampermonkey 生成脚本,安装到 Tampermonkey 后自动生效。

特点:

  • 在网页 document 上定时触发 mousemove 事件
  • 可配置间隔时间,只匹配网课域名
  • 不影响系统鼠标

工作流程

Step 1  确认需求
  什么平台?需要多久?是否需要点击播放按钮?

Step 2  选择方案
  直接控制浏览器(推荐)/ Python系统鼠标 / 油猴脚本

Step 3  启动
  浏览器: python3 scripts/browser_keeper.py --url "https://..." --interval 20
  系统鼠标: python3 scripts/mouse_keeper.py --interval 30
  油猴: 安装生成的脚本到 Tampermonkey

Step 4  监控
  脚本运行中,定时模拟鼠标活动
  Ctrl+C 或移鼠标到角落停止

Step 5  停止
  Ctrl+C 或 /网课 stop

脚本参数

browser_keeper.py(直接控制浏览器)

参数默认值说明
--url无网课页面地址
--interval20保活间隔(秒)
--duration0运行时长(秒),0=无限
--headlessfalse无头模式(不推荐,部分平台检测)

mouse_keeper.py(系统鼠标控制)

参数默认值说明
--interval30鼠标活动间隔(秒)
--modemove模式:move(微移)或 click(点击)
--pixel1微移像素数
--duration0运行时长(秒),0=无限
--corner-stoptrue鼠标移到屏幕角落自动停止

安全设计

  1. 紧急停止:Ctrl+C 随时中断
  2. 角落退出:鼠标快速移到屏幕任意角落(距边 < 5px)自动停止
  3. 微移不影响操作:每次只移 1 像素然后移回,你盯着屏幕看也察觉不到
  4. 不模拟键盘:只动鼠标,不自动按键,不干扰其他操作
  5. 可见提示:启动时打印运行参数和停止方式,每隔 10 次活动打印一次心跳

平台适配

不同平台的检测机制略有差异:

平台检测方式推荐方案推荐间隔
学习通鼠标离开 iframe 暂停浏览器直接控制15-20s
雨课堂失焦暂停浏览器直接控制15-20s
智慧树鼠标静止超时暂停Python 微移25-30s
中国大学MOOC标签页失焦暂停浏览器直接控制10-15s
超星泛雅鼠标离开暂停浏览器直接控制15-20s

如果默认参数不生效,缩短间隔到 10-15 秒再试。

边界情况

  • 多显示器:鼠标只在主显示器活动,不跨屏;浏览器方案不受影响
  • 全屏播放:微移不影响全屏状态;浏览器方案在全屏下仍可模拟 video 元素事件
  • 弹窗检测:部分平台会弹"是否继续学习",浏览器方案的 click 模式可点击确认
  • 后台运行:终端最小化不影响,但终端被关闭则脚本停止
  • 休眠问题:电脑休眠会暂停脚本,需在系统设置中关闭自动休眠或使用 caffeinate
  • Selenium 被检测:脚本已隐藏 navigator.webdriver 标记,但部分平台检测更严,需配合 --headless false(可见模式更不容易被检测)

Rules

常见问题排查 / Troubleshooting

  • 视频还是暂停了 → 间隔太长,缩短到 10-15 秒;或换浏览器直接控制方案
  • 鼠标乱跑 → pixel 参数设太大,改为 1
  • macOS 权限报错 → 系统设置 → 隐私与安全 → 辅助功能 → 允许终端
  • 脚本启动报错 → pip install pyautogui(系统鼠标)或 pip install selenium webdriver-manager(浏览器控制)
  • Selenium 找不到 video 元素 → 页面可能用了 iframe,需先 driver.switch_to.frame()
  • 油猴脚本不生效 → 检查域名匹配规则是否正确
  • 浏览器被平台检测到自动化 → 确认用了 --disable-blink-features=AutomationControlled,不要用 --headless

版本历史 / Version History

版本日期变更
1.0.02026-07-17初始版本:Python 微移/点击模式 + 油猴脚本生成
1.1.02026-07-17新增浏览器直接控制方案(Selenium),自动检测视频暂停并恢复,反检测隐藏

See Also / 相关技能

  • /sleepless from sleepless — 长时间无人值守执行任务的通用模式
Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

GPL-3.0

Source path

skills/wang-ke

Default branch

main

Latest commit

d57a35e

Tree SHA

02d9442