From 024dd0651ce42a98eca5b860a5aa2c48b6c2a7bd Mon Sep 17 00:00:00 2001 From: KenanZhu <3471685733@qq.com> Date: Thu, 21 May 2026 22:37:06 +0800 Subject: [PATCH] Add v1.2.1 user manual Migrate v1.2.1 manual from static HTML docs to Mintlify MDX format. Introduces browser driver auto-download wizard, recurring scheduled tasks with weekday selection, expanded troubleshooting guide with JSON editing steps, FAQ section, and download requirements. Co-Authored-By: Claude Opus 4.7 --- versions/v1.2.1.mdx | 448 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 448 insertions(+) create mode 100644 versions/v1.2.1.mdx diff --git a/versions/v1.2.1.mdx b/versions/v1.2.1.mdx new file mode 100644 index 0000000..4e3f03a --- /dev/null +++ b/versions/v1.2.1.mdx @@ -0,0 +1,448 @@ +--- +title: "v1.2.1 用户手册" +description: "AutoLibrary v1.2.1 版本用户手册 - 浏览器驱动自动下载,重复定时任务,完善故障排除" +icon: "book" +--- + +## 工具简介 + +AutoLibrary 是一款专为北京建筑大学图书馆设计的自动化工具,旨在帮助学生简化图书馆座位操作流程,节省宝贵时间。 + +### 工具特点 + +> 本文主要概述了在 Windows 11/10 环境下的 AutoLibrary 工具的安装、配置和使用方法。 + +## 功能介绍 + +**自动预约** — 如果用户当前没有有效预约时,工具会自动为您预约指定座位。 +> **适用场景:** 提前预约第二天的座位 + +**自动签到** — 如果用户当前已有预约,且在可签到时间范围(开始时间的前后30分钟)内,工具会自动完成签到。 +> **适用场景:** 因忘记签到而导致失约,影响正常使用 + +**自动续约** — 如果用户当前正在使用座位,且到达可续约时间(结束时间前的120分钟),工具会自动延长使用时间。 +> **适用场景:** 需要长时间使用座位 + +### 模式组合使用 + +运行模式可以组合使用,只需在配置窗口中勾选对应模式即可: + +**定时任务** — 使用内置定时任务管理,添加定时任务,指定时间后按当前预约信息自动运行。 +支持设置重复周期,如每周一、周三、周五等执行预约操作。 + +![功能介绍-定时任务](/assets/images/v1.2.1/功能介绍-定时任务.png) +> **适用场景:** 定时执行预约、签到、续约操作 + +## 准备工作 + +### 安装工具 + +#### 下载软件 + +请从 [AutoLibrary 下载页面](/downloads) 下载最新版本的工具。 + +**Github**:下载页面更新较为及时,但网络连接不稳定,速度较慢。 +**云盘下载**:版本更新略有延迟,但下载速度更快。 + +#### 版本类型 + +从 v1.1.0 版本开始,提供两种版本供您选择: + +- 便携压缩包版本 +- 安装器版本 + +> **重要:**压缩包内的 `_internal` 文件夹与 `AutoLibrary.exe` 可执行文件需要位于同一目录下,请勿修改或移动这两个文件,否则可能导致工具无法正常运行。 + +### 配置浏览器驱动 + +工具需要通过浏览器驱动来控制浏览器。以下两种方式可以帮助您快速配置驱动: + +> **提示:**AutoLibrary 支持自动检测本地安装的浏览器,并查找适配的驱动版本,大大简化了配置流程。 + +#### 方式一:使用浏览器驱动自动下载功能(推荐) + +![浏览器驱动自动下载窗口](/assets/images/v1.2.1/浏览器驱动自动下载窗口.png) + +**操作步骤:** + +1. 在 AutoLibrary 配置界面中,点击"浏览器驱动自动下载"按钮,打开驱动下载窗口 +2. 工具会自动检测您电脑上已安装的浏览器,并列出可用的驱动版本 +3. 选择需要的浏览器驱动版本,点击"开始下载"按钮 +4. 下载完成后,点击"确定"保存并退出对话框,即可在配置界面中使用该驱动 + +![开始下载浏览器驱动](/assets/images/v1.2.1/浏览器驱动自动下载窗口-开始下载.png) + +![浏览器驱动下载完成](/assets/images/v1.2.1/浏览器驱动自动下载窗口-下载完成.png) + +#### 方式二:手动下载浏览器驱动 + +如果您仍需手动下载驱动,请根据您使用的浏览器选择对应的驱动: + +- **Microsoft Edge** — 适用于Windows 10/11系统 [下载驱动](https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/) +- **Google Chrome** — 最常用的浏览器 [下载驱动](https://developer.chrome.google.cn/docs/chromedriver/downloads) +- **Mozilla Firefox** — 开源浏览器 [下载驱动](https://github.com/mozilla/geckodriver/releases) + +## 使用步骤 + +### 启动工具 + +双击运行 AutoLibrary.exe 文件,工具将启动主界面。 + +> **提示:**软件首次启动,未初始化配置文件,直接运行脚本会提示失败。 + +![运行主界面](/assets/images/v1.2.1/运行主界面.png) + +### 配置工具 + +对于不同用户的需求,你可以使用两种不同的方式来配置工具 + +1. 使用界面配置:点击主界面窗口右上角的配置按钮,打开配置窗口。 + +![配置窗口-用户配置](/assets/images/v1.2.1/配置窗口-用户配置.png) +> **提示:**初次运行软件时,用户配置默认为空,需要手动添加。 + +#### 用户列表 + +| 功能 | 说明 | 备注 | +| --- | --- | --- | +| 用户列表 | 显示当前配置文件中的所有用户 | 支持添加、删除用户操作,选中用户项进行详细配置 | + +#### 用户信息 + +| 参数 | 说明 | 默认值/可选值 | +| --- | --- | --- | +| 学号 | 用户的学号 | 必填项,用于登录图书馆系统 | +| 密码 | 用户的密码 | 默认值为"000000",请根据实际情况修改 | + +#### 预约信息 + +| 参数 | 说明 | 默认值/可选值 | +| --- | --- | --- | +| 日期 | 座位预约日期 | 格式:yyyy-MM-dd,默认显示当前日期(18:00-23:00可预约次日) | +| 地点 | 预约座位的地点 | 默认值:"图书馆" | +| 楼层 | 预约座位的楼层 | 默认值:"二层",可选:"二层"、"三层"、"四层"、"五层" | +| 区域 | 预约座位的区域 | 默认值:"二层内环" ,可选随楼层变化 | +| 座位号 | 预约座位的座位号 | 例如:"12A"、"012a"等 | +| 开始时间 | 预约座位的开始时间 | 格式:HH:mm,默认当前时间,可选范围:7:30-23:30 | +| 结束时间 | 预约座位的结束时间 | 格式:HH:mm,默认当前时间+2小时,可选范围同开始时间 | +| 最大时间偏差 | 时间不可用时的最大偏差范围 | 单位:分钟,可选范围:0-120,0表示严格按选择时间 | +| 优先最早/晚 | 当最大时间偏差范围内存在多个可选时间时的优先选择 | 开始时间优先最早,结束/续约时间优先最晚 | +| 期望预约时长 | 预约座位的期望时长 | 单位:小时,可选范围:0-8,默认:2小时 | +| 期望续约时长 | 座位的期望续约时长 | 单位:小时,可选范围:0-4,默认:1小时 | +| 优先满足期望时长 | 是否优先满足时长限制 | 勾选后 AutoLibrary 会尽量满足期望预约时长,但是可能因座位紧张导致预约失败 | + +![配置窗口-运行配置](/assets/images/v1.2.1/配置窗口-运行配置.png) + +#### 图书馆设置 + +| 参数 | 说明 | 默认值/备注 | +| --- | --- | --- | +| 访问网址 | 图书馆系统的主机URL | 默认值:http://10.1.20.7,无需更改 | +| 登录页面 | 登录页面的URL路径 | 默认值:/login,无需更改 | + +#### 浏览器设置 + +| 参数 | 说明 | 默认值/可选值 | +| --- | --- | --- | +| 浏览器类别 | 选择使用的浏览器类型 | 支持:Microsoft Edge、Google Chrome、Mozilla Firefox | +| 浏览器驱动路径 | 浏览器驱动程序路径 | 通过浏览按钮选择对应版本的浏览器驱动 | +| 无头模式 | 运行时是否隐藏浏览器窗口 | 默认:false(显示窗口),true为隐藏窗口运行 | + +#### 登录设置 + +| 参数 | 说明 | 默认值/可选值 | +| --- | --- | --- | +| 自动识别验证码 | 是否自动处理验证码 | 默认:勾选(推荐) | +| 登录尝试次数 | 登录失败后的最大重试次数 | 默认:3次 | + +#### 运行模式 + +| 功能 | 说明 | 备注 | +| --- | --- | --- | +| 自动预约 | 按配置进行座位预约 | 用户当天无有效预约时执行 | +| 自动签到 | 自动完成图书馆签到 | 满足条件时执行,否则跳过 | +| 自动续约 | 自动延长座位使用时间 | 满足条件时执行,否则跳过 | + +![配置窗口-其它](/assets/images/v1.2.1/配置窗口-其它.png) + +#### 当前配置: + +| 参数 | 说明 | 操作 | +| --- | --- | --- | +| 运行配置文件路径 | 当前使用的运行配置文件路径 | 可通过浏览按钮选择新的配置文件 | +| 用户配置文件路径 | 当前使用的用户配置文件路径 | 可通过浏览按钮选择新的配置文件 | + +#### 导出配置: + +| 功能 | 说明 | 操作 | +| --- | --- | --- | +| 导出配置文件 | 将当前配置导出为文件 | 选择目标路径和文件名后点击导出按钮 | + +2. 使用配置文件:软件启动时,将自动在用户主目录下的指定位置创建运行配置文件(run.json)和用户配置文件(user.json)。 + +> **注意:**从 v1.1.0 版本开始,运行配置文件与用户配置文件的默认存储路径已变更,不再生成于可执行文件所在目录,而是统一存放于用户主目录下的 `AutoLibrary/config` 文件夹中。 + +以 Windows 系统为例,你可以在 `C:\Users\用户名\AppData\Roaming\AutoLibrary\config` 目录下找到这两个文件。此项调整使得无论通过安装器安装或直接使用可执行文件,软件均能正确读取同一套配置信息。 + +> **警告:**任何情况下都不建议在该目录下修改除运行配置文件和用户配置文件以外的任何文件。即使只修改这两个配置文件,也请务必保持格式正确,否则可能导致软件无法正常启动或运行。 + +用户配置文件 + +run.json文件控制工具的基本运行参数: + +``` +{ +"library": { +"host_url": "http://10.1.20.7", +"login_url": "/login" +}, +"mode": { +"run_mode": 1 +}, +"login": { +"auto_captcha": true, +"max_attempt": 3 +}, +"web_driver": { +"driver_type": "edge", +"driver_path": "", +"headless": false +} +} +``` + +#### 参数说明 + +| 参数 | 类型 | 说明 | +| --- | --- | --- | +| library/ | | | +| ./host_url | string | 图书馆主机URL,无需更改 | +| ./login_url | string | 登录页面URL,无需更改 | +| mode/ | | | +| ./run_mode | number | 运行模式,可组合使用(+1:自动预约,+2:自动签到, +4:自动续约) | +| login/ | | | +| ./auto_captcha | boolean | 自动验证码识别,建议保持true | +| ./max_attempt | number | 登录尝试次数,默认3次 | +| web_driver/ | | | +| ./driver_type | string | 浏览器类型(edge/chrome/firefox) | +| ./driver_path | string | 驱动文件路径,默认为空,如果不配置直接启动,会导致 AutoLibrary 运行失败 | +| ./headless | boolean | 无头模式,默认false(显示浏览器窗口) | + +user.json文件控制用户的预约和签到参数: + +``` +{ +"groups": [ +{ +"name": "分组名", +"enable": true, +"users": [ +{ +"username": "您的学号", +"password": "您的密码", +"enable": true, +"reserve_info": { +"date": "2025-10-30", +"place": "1", +"floor": "4", +"room": "5", +"begin_time": { +"time": "09:30", +"max_diff": 30, +"prefer_early": true +}, +"end_time": { +"time": "21:23", +"max_diff": 30, +"prefer_early": false +}, +"renew_time": { +"expect_duration": 1.0, +"max_diff": 30, +"prefer_early": false +}, +"seat_id": "31A", +"expect_duration": 6 +"satisfy_duration": true +} +}, +/* 可以添加多个上述的配置块,每个用户预约信息独立配置 */ +] +}, +/* 可以添加多个分组,如果配置文件中不添加分组,只添加用户配置块,AutoLibrary 读取时会自动创建一个默认的兼容分组 */ +] +} +``` + +#### 参数说明 + +> **提示:** 可以添加多个用户,工具会按顺序处理每个用户的预约请求。下面参数说明只说明用户块的参数,分组块的参数可以参考上述示例 + +| 参数 | 类型 | 说明 | +| --- | --- | --- | +| username | string | 学号 | +| password | string | 密码 | +| enable | bool | 是否启用该用户的预约,默认值为true,若设置为false,当 AutoLibrary 处理到该用户时会跳过该用户的预约。 | +| reserve_info/ | | | +| ./date | string | 预约日期(格式:yyyy-MM-dd) | +| ./place | string | "图书馆"或字符"1"(预约图书馆) | +| ./floor | string | 预约楼层 **点击查看数字对于的楼层** "2": "二层" "3": "三层" "4": "四层" "5": "五层" | +| ./room | string | 预约区域 **点击查看数字对于的预约区域** "1": "二层内环" "2": "二层西区" "3": "三层内环" "4": "三层外环" "5": "四层内环" "6": "四层外环" "7": "四层期刊区" "8": "五层考研" | +| ./seat_id | string | 座位编号(例如:"12A/12a/012A/012a") | +| ./expect_duration | number | 期望预约时长(分钟) | +| ./satisfy_duration | bool | 是否满足期望预约时长 | +| /begin_time/ ././time | string | 预约开始时间(格式:HH:mm) | +| ././max_diff | number | 最大时间差(分钟) | +| ././prefer_early | bool | 是否优先预约较早的时间 | +| ./end_time/ ././time | string | 预约结束时间(格式:HH:mm) | +| ././max_diff | number | 最大时间差(分钟) | +| ././prefer_early | bool | 是否优先预约较早的时间 | +| ./renew_time/ ././expect_duration | number | 期望预约时长(小时) | +| ././max_diff | number | 最大时间差(分钟) | +| ././prefer_early | bool | 是否优先预约较早的时间 | + +### 定时任务设置 + +#### 定时任务管理 + +你可以在定时任务管理界面添加、删除、修改定时任务。 + +![定时任务添加界面](/assets/images/v1.2.1/定时任务添加.png) + +![定时任务列表](/assets/images/v1.2.1/定时任务.png) +> **提示:**在队列中的任务,即已就绪和运行中任务无法删除,只能等待运行结束。 + +定时时间设置 + +定时时间分为两种模式: + +| 定时选项 | 描述 | 使用示例 | +| --- | --- | --- | +| 特定时间 | 指定定时任务开始的绝对时间 | 2025-10-30 08:00:00 | +| 相对时间 | 预约开始时间相对当前时间的偏移量 | 提前1天、提前2小时、提前30分钟 | + +重复执行设置 + +如需重复性执行定时任务,请在定时任务添加界面中勾选 **"启用重复执行"**。 + +**说明:**重复执行的周期以一周为单位,你可以选择需要运行的天(例如:每周一、周三、周五等)。这样,定时任务就会在每周指定的时间自动运行。 +> **提示:**如果需要每天都运行定时任务,请在重复执行中勾选所有选项(即每周一至周日)。 + +**注意:**AutoLibrary 将全选和全不选都视作重复执行所有天。 + +执行方式设置 + +定时任务提供两种执行方式: + +| 执行方式 | 特点 | 使用场景 | +| --- | --- | --- | +| 静默执行 | 定时任务开始后自动运行,完成后显示系统通知 | 希望自动运行,无需人工干预 | +| 运行前提示 | 定时任务开始时显示主界面并弹出通知 | 需要在运行前确认或查看进度 | + +**提示:**如果希望定时任务可以完全自动静默运行,可以在配置界面中的运行配置中勾选 "无头模式",然后在右下角的程序托盘中右键点击 "最小化到托盘"。这样,定时任务运行时就不会显示主界面和浏览器窗口,仅在完成时弹出系统消息通知。 + +#### 监控运行状态 + +你可以在软件中实时监控定时任务的运行状态,包括: + +- 任务是否在队列中等待运行 +- 任务是否正在运行 +- 已执行完成的任务数量 + +![监控运行状态](/assets/images/v1.2.1/定时任务开始运行.png) + +#### 运行结束通知 + +![运行结束通知](/assets/images/v1.2.1/定时任务运行结束提示.png) + +定时任务运行结束后,系统会根据选择的执行方式显示通知: + +| 执行方式 | 通知显示方式 | +| --- | --- | +| 静默执行 | 运行结束后在右下角显示系统通知 | +| 运行前提示 | 运行时显示主界面,结束后在右下角显示系统通知 | + +### 监控运行状态 + +如果运行设置中没有勾选浏览器无头模式运行,工具会在运行过程中打开浏览器窗口,显示自动运行过程。 + +除此之外,你还可以通过软件的运行日志输出区域查看详细的运行状态和错误信息。 + +![监控运行状态](/assets/images/v1.0.0/监控运行状态-运行图.png) + +### 查看运行结果 + +软件每次分组运行结束后日志会显示本分组运行结果:"处理完成, 共计 n 个用户, 成功 n 个用户, 失败 m 个用户, 跳过 s 个用户"。 + +![查看运行结果](/assets/images/v1.0.0/监控运行状态-运行结果.png) + +## 故障排除 + +### 常见使用问题及解决方法 + +### 工具启动时报错"无法找到驱动 / Unable to obtain driver"等类似报错信息 + +这大概率是因为浏览器驱动未正确安装或版本不匹配。 + +**检查驱动位置** - 确认驱动文件是否放置在正确位置 +**确认版本匹配** - 确认驱动版本与浏览器版本完全匹配,例如:Chrome 浏览器需要对应版本的 chromedriver.exe,切勿混用 +**重新安装驱动** - 尝试重新下载并安装驱动 + +### 登录失败,提示账号密码错误 + +请检查配置界面中的账号密码是否正确。 + +**确认账号密码** - 确认学号和密码无误 +**检查特殊字符** - 检查是否有不支持的特殊字符需要转义 +**手动验证账号** - 尝试手动登录图书馆系统确认账号可用 + +### 预约失败,提示座位不可用 + +目标座位可能已被他人预约或不在可预约时间。 + +**确认座位信息** - 确认座位编号是否正确,是否在该楼层指定区域 +**调整预约策略** - 尝试预约其它座位或调整预约时间,例如调整允许的开始或结束时间的最大偏差,位置紧张情况下可以让脚本根据允许的时间范围选择最佳起始时间 + +### 定时任务始终显示 "已就绪" 或 "执行中",且无法删除 + +> **警告:**此解决方法需要直接操作 AutoLibrary 的核心配置文件,需要操作者对 JSON 文件格式有一定了解。操作前建议先备份相关文件,以免误操作导致配置丢失。 + +这一般是因为定时任务已经进入了预约队列,但是软件上次可能没有成功处理完就被意外关闭了。请按照以下步骤手动删除异常任务: + +**记录异常任务信息** - 检查界面中正在运行的定时任务,记住任务名称或运行时间(任何能帮助你分辨该任务的信息),稍后需要在配置文件中定位它。 +**找到配置文件目录** - 在 AutoLibrary 配置界面的「其它」选项卡中,找到「当前运行配置文件的路径」显示的文件夹路径,使用文件管理器打开该目录。 +**打开定时任务配置文件** - 在该目录中找到名为 "timer_task.json" 的文件,使用文本编辑器(推荐使用 VS Code、Notepad++ 等代码编辑器,也可使用记事本)打开。 +**定位异常任务** - 在 JSON 文件中查找包含以下信息的任务配置块:name(任务名称)、execute_time(执行时间)以及你在第一步中记录的其它信息。 +**识别中文名称(如适用)** - 如果你的定时任务名称包含中文,在 JSON 文件中会以 Unicode 编码显示,例如:"name": "预约任务"。要解码这些字符,可以复制包含 Unicode 的 "name" 字段整个值,使用在线工具搜索「Unicode 转中文」进行转换,确认是否匹配你的异常任务。 +**删除异常任务** - 找到对应的任务配置块后,将其从 JSON 文件中完全删除。删除时请注意保持 JSON 格式完整,确保花括号 {}、方括号 []、逗号等符号正确,不要删除其它正常的任务配置,删除后保存文件。 +**重启软件** - 完全关闭 AutoLibrary,然后重新打开。此时异常的定时任务应该已成功删除,界面状态恢复正常。 + +提示:如果操作后 JSON 格式出错,软件可能会意外覆写原有配置文件。因此请务必备份重要的配置文件恢复,并检查 JSON 语法是否正确(注意最后一个元素后不要有多余的逗号)。 + +## 常见问题 + +### 使用 AutoLibrary 是否安全? + +AutoLibrary完全模拟人工操作,不干扰图书馆系统正常运行。工具不会收集或上传您的个人信息,所有数据仅保存在本地配置文件中。 + +### 可以同时预约多个座位吗? + +根据图书馆规定,每个账号同一时间段只能预约一个座位。但您可以在配置界面中添加多个账号,工具会依次处理每个账号的预约请求。 + +> **重要:**本工具软件旨在简化并辅助用户正常使用时的图书馆服务流程,请勿滥用影响他人及图书馆正常运行。 + +### 工具运行期间可以操作电脑吗? + +可以正常使用电脑,但请勿操作工具自动打开的浏览器窗口,否则可能会干扰工具的正常运行。 + +## 下载安装 + +### 获取AutoLibrary + +[前往下载页面](/downloads) + +文件大小:约95MB + +系统要求:Windows 10/11,支持Edge/Chrome/Firefox浏览器 + +### 安装步骤