# MouseJiggler **Repository Path**: chequer-work/mouse-jiggler ## Basic Information - **Project Name**: MouseJiggler - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-02 - **Last Updated**: 2025-12-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MouseJiggler - 防离开状态鼠标移动脚本 [![Python](https://img.shields.io/badge/Python-3.x-blue.svg)](https://python.org) [![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE) [![Platform](https://img.shields.io/badge/Platform-Windows%20%7C%20macOS%20%7C%20Linux-lightgrey.svg)]() 🖱️ 一个智能的鼠标移动脚本,防止聊天软件等应用因长时间无操作而自动切换到离开状态。 ## 📖 项目简介 MouseJiggler 是一个跨平台的Python脚本,它会在检测到鼠标长时间无移动时,自动在屏幕中心附近的两个坐标点之间来回移动鼠标,从而: - ✅ 防止聊天软件(如企业微信、钉钉、Slack等)自动切换到离开状态 - ✅ 防止电脑因长时间无操作而自动锁屏或休眠 - ✅ 保持在线状态,适用于需要长时间保持活跃的场景 - 🤖 智能检测:只有在你真正离开时才会移动鼠标,不会干扰正常操作 ## 🚀 功能特点 - **智能检测**:每分钟检测鼠标活动,超过1分钟无操作才开始移动 - **小范围移动**:只在屏幕中心附近小范围移动,不影响正常使用 - **跨平台支持**:支持 Windows、macOS、Linux - **无需安装**:绿色软件,下载即用 - **自动依赖管理**:自动检测并安装所需依赖库 - **全局命令**:可设置全局命令,随时随地启动 ## 📁 项目结构 ``` MouseJiggler/ ├── mouse_jiggler.py # 核心Python脚本 ├── mousejiggler.sh # 跨平台启动脚本 ├── 启动防离开脚本.bat # Windows启动脚本 ├── requirements.txt # Python依赖列表 └── README.md # 项目说明文档 ``` ## 🛠️ 安装教程(傻瓜式指南) ### 方法一:直接下载使用 1. **下载项目** ```bash # 方式1:使用git克隆 git clone https://github.com/yourusername/mousejiggler.git # 方式2:直接下载ZIP文件并解压 # 访问 https://github.com/yourusername/mousejiggler 点击"Code" -> "Download ZIP" ``` 2. **进入项目目录** ```bash cd mousejiggler ``` 3. **双击启动(最简单)** - Windows: 双击 `启动防离开脚本.bat` - macOS: 双击 `mousejiggler.sh` - Linux: 双击 `mousejiggler.sh` 或在终端运行 ### 方法二:命令行安装 1. **克隆项目** ```bash git clone https://github.com/yourusername/mousejiggler.git cd mousejiggler ``` 2. **安装Python依赖** ```bash # 脚本会自动安装依赖,也可以手动安装 pip install -r requirements.txt # 或者分别安装 pip install pyautogui pynput ``` ## 💻 使用方法 ### Windows 用户 #### 方式1:双击启动(推荐新手) ``` 双击文件:启动防离开脚本.bat ``` #### 方式2:命令行启动 ```cmd # 在项目目录下 启动防离开脚本.bat # 或者 python mouse_jiggler.py ``` ### macOS 用户 #### 方式1:双击启动 ``` 双击文件:mousejiggler.sh ``` #### 方式2:命令行启动 ```bash # 在项目目录下 ./mousejiggler.sh # 或者 python3 mouse_jiggler.py ``` ### Linux 用户 #### 方式1:命令行启动 ```bash # 在项目目录下 ./mousejiggler.sh # 或者 python3 mouse_jiggler.py ``` #### 方式2:添加执行权限(如果需要) ```bash chmod +x mousejiggler.sh ``` ## 🌟 设置全局命令(高级用法) 设置后可以在任何目录下使用 `mousejiggler` 命令启动脚本: ### macOS/Linux ```bash # 1. 创建用户bin目录 mkdir -p ~/bin # 2. 创建软链接 ln -sf "/path/to/mousejiggler.sh" ~/bin/mousejiggler # 3. 添加到PATH(如果尚未添加) echo 'export PATH="$HOME/bin:$PATH"' >> ~/.zshrc # zsh用户 # echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc # bash用户 # 4. 重新加载配置 source ~/.zshrc # 或 source ~/.bashrc # 5. 现在可以在任何地方使用 mousejiggler ``` ### Windows ```cmd # 1. 将项目目录添加到系统PATH,或 # 2. 创建bat文件的快捷方式到系统目录 # 3. 或将项目路径添加到环境变量 ``` ## ⚙️ 工作原理 1. **监控鼠标活动**:脚本每分钟检查一次鼠标是否有移动 2. **智能判断**:如果超过60秒没有鼠标移动,判定为用户离开 3. **小范围移动**:在屏幕中心附近两个坐标点之间来回移动 4. **持续监控**:移动后继续监控,用户回来后自动停止移动 **移动参数:** - 空闲阈值:60秒 - 移动间隔:60秒 - 移动距离:屏幕中心左右各50像素 - 移动坐标:`(屏幕中心-50, 屏幕中心)` ↔ `(屏幕中心+50, 屏幕中心)` ## 🛡️ 安全说明 - **开源代码**:所有代码完全开源,可审计 - **本地运行**:所有操作都在本地进行,不上传任何数据 - **无害移动**:只在屏幕中心小范围移动,不会影响正常使用 - **易于终止**:按 `Ctrl+C` 即可停止,关闭终端也会停止 ## ❓ 常见问题 ### Q1: 脚本启动时报错找不到Python? **A:** 确保已安装Python 3.x: - Windows: 从 https://python.org 下载安装 - macOS: `brew install python` 或从官网下载 - Linux: `sudo apt install python3` (Ubuntu/Debian) ### Q2: 提示缺少依赖库? **A:** 脚本会自动安装依赖,也可以手动安装: ```bash pip install pyautogui pynput ``` ### Q3: macOS上提示"无法打开因为来自身份不明开发者"? **A:** 在系统偏好设置 -> 安全性与隐私中允许运行,或右键点击 -> 打开 ### Q4: 如何停止脚本? **A:** 按 `Ctrl+C` 或直接关闭终端窗口 ### Q5: 会影响我正常使用鼠标吗? **A:** 不会。脚本只在检测到你真正离开(60秒无操作)时才移动鼠标,正常使用时不会触发。 ### Q6: 可以自定义移动参数吗? **A:** 可以修改 `mouse_jiggler.py` 中的参数: - `idle_threshold`: 空闲阈值(秒) - `move_interval`: 移动间隔(秒) - 移动坐标可在代码中修改 ## 📝 系统要求 - **操作系统**: Windows 7+, macOS 10.12+, Linux - **Python**: Python 3.6 或更高版本 - **依赖库**: `pyautogui`, `pynput` ## 🤝 贡献 欢迎提交Issue和Pull Request! 1. Fork 本项目 2. 创建你的特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交你的改动 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启一个 Pull Request ## 📄 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情 ## ⭐ Star History 如果这个项目对你有帮助,请给它一个星星! --- **免责声明**: 本工具仅用于防止因系统空闲导致的自动状态切换,请遵守公司政策和使用规范。