| Crates.io | luo-utils |
| lib.rs | luo-utils |
| version | 0.1.0 |
| created_at | 2026-01-09 07:12:52.214224+00 |
| updated_at | 2026-01-09 07:12:52.214224+00 |
| description | A Rust utility library for system automation including mouse/keyboard simulation, window operations, screenshots, and AI inference |
| homepage | |
| repository | https://github.com/your-username/luo-utils |
| max_upload_size | |
| id | 2031727 |
| size | 332,192 |
一个基于Rust的Windows自动化工具库,支持鼠标键盘操作、窗口捕获、定时任务、AI推理等功能。
将 luo-utils 添加到你的 Cargo.toml:
[dependencies]
luo-utils = "0.1.0"
然后在代码中使用:
use luo_utils::utils::{move_mouse, click_mouse, take_screenshot};
fn main() -> Result<(), Box<dyn std::error::Error>> {
// 移动鼠标并点击
move_mouse(100, 200)?;
click_mouse()?;
// 截图
take_screenshot(None, luo_utils::utils::CaptureFormat::Png, Some("screenshot.png".to_string()))?;
Ok(())
}
cargo add luo-utils
确保你已安装Rust,然后:
cargo install luo-utils --features cli
或者从源码构建:
git clone <repository-url>
cd luo-utils
cargo build --release --features cli
# 移动鼠标到指定坐标
luo-utils move <x> <y>
# 在指定坐标点击鼠标
luo-utils click <x> <y>
# 截取屏幕指定区域
luo-utils screenshot <left,top,right,bottom>
# 执行定时任务
luo-utils timedtask <config_file.json>
创建JSON配置文件定义定时任务序列:
{
"datetime": "2024-01-07 15:30:00",
"click_items": [
{
"x": 100,
"y": 200,
"before": 1000,
"after": 500
},
{
"x": 300,
"y": 400,
"before": 2000,
"after": 1000
}
]
}
src/
├── main.rs # 主程序入口
├── config.rs # 配置管理
├── lib.rs # 库文件
└── utils/ # 工具模块
├── ai.rs # AI功能
├── capture.rs # 屏幕捕获
├── dpi.rs # DPI处理
├── keyboard.rs # 键盘控制
├── mouse.rs # 鼠标控制
├── timer.rs # 定时器
├── types.rs # 类型定义
└── window.rs # 窗口管理
windows - Windows API绑定image - 图像处理serde - 序列化/反序列化clap - 命令行参数解析reqwest - HTTP客户端tokio - 异步运行时MIT License
欢迎提交Issue和Pull Request!