feat: add opt-in answer selection and global hidden panel
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# 华谊题库助手
|
||||
|
||||
用于华谊学习平台练习页面的油猴脚本:按题库采集题目和平台提供的标准答案,恢复题目选择复制,按实际名称导出 CSV,一次导入多个题库,输入文字或划选题干查答案。当前版本 **1.1.0**。
|
||||
支持在普通 HTTP / HTTPS 网页中通过快捷键打开的本地题库油猴脚本:文字搜索、划词检索、自动选择已确认答案,并保留华谊练习平台的按库采集、CSV 导出与多题库导入。当前版本 **1.2.0**。
|
||||
|
||||
安装文件:[`dist/huayi-question-bank.user.js`](dist/huayi-question-bank.user.js)。这是构建后的完整脚本,无须安装 Node.js 或运行服务器。
|
||||
|
||||
@@ -8,12 +8,25 @@
|
||||
|
||||
1. 在浏览器中安装并启用 Tampermonkey(油猴)。
|
||||
2. 打开油猴管理面板,选择“新建脚本”,将安装文件的全部内容粘贴进去并保存。
|
||||
3. 打开或刷新 `https://www.shhuayi-elearning.cn/` 下的练习页面。安装后应重新进入练习,以便观察首次加载的题目响应。
|
||||
4. 右下角出现“题库助手”。默认开始采集正常加载的练习题;已加载的批量题目会一起记录。若答案需要作答后才返回,则在正常练习后补齐。
|
||||
3. 打开或刷新普通网页,按 **Shift + Alt + Q** 显示题库助手,再按一次隐藏。每次加载页面都默认完全隐藏,无悬浮按钮;旧版保存的打开状态也会重置。
|
||||
4. 在华谊练习页面,正常加载的题目和标准答案仍会自动保存;安装后应重新进入练习,以便观察首次题目响应。普通网页只使用本地题库检索,不观察其网络请求或自动采集表单。
|
||||
5. 在“文字搜索”中输入或粘贴至少两个字符,按回车或点“搜索”。也可以在页面划选题干后松开鼠标自动查询。
|
||||
6. 在“题库 / 导出”中检查实际题库名、范围内题数及文件名预览,再导出 CSV 或备份 JSON。默认只导出当前题库,全部题库需要手动选择。
|
||||
6. 在“题库 / 导出”中检查实际题库名、范围内题数及文件名预览,再导出 CSV 或备份 JSON。已识别的练习页默认当前题库;普通网页默认全部已存题库。
|
||||
|
||||
浏览器需允许油猴在该网站运行用户脚本。若没有出现面板,先确认扩展已启用、该站点有运行权限,再刷新页面。
|
||||
浏览器需允许油猴在相应网站运行用户脚本。更新到全网页版本后,浏览器可能需要重新授予网站访问权限。若快捷键没有显示面板,先确认扩展已启用且该站点有运行权限。浏览器内置页面、扩展商店及受限制页面不能运行普通用户脚本;本地文件取决于浏览器的文件访问设置,本版匹配普通 HTTP / HTTPS 页面。
|
||||
|
||||
## 自动答题
|
||||
|
||||
打开“自动答题”页签,先导入包含标准答案的题库,然后选择:
|
||||
|
||||
- **答当前题**:从本地已确认记录中精确匹配当前题干、题型和完整选项,自动选择正确选项。
|
||||
- **连续自动选择**:仅在当前页面启用;题目变化后继续核对并选择。关闭后立即停止,刷新或打开其他网页后默认关闭。
|
||||
|
||||
单选按答案内容选择当前选项;多选同步完整正确集合,取消已经选中的错误项;判断题按“正确 / 错误”对应。候选答案冲突、题干或选项不完整、重复文字无法唯一对应、选项不可操作时跳过,显示原因。
|
||||
|
||||
选择完成后由你检查并提交或进入下一题。脚本不会点击提交、交卷、下一题按钮。华谊练习中的选项点击可能触发网站自身的作答响应,具体行为由练习页面决定。
|
||||
|
||||
自动选择支持华谊题目 DOM,以及标准 `fieldset + legend + label + radio/checkbox` 和明确题目容器结构。全网页显示不代表能自动识别任意网站的自定义答题控件;无法识别时可继续使用文字搜索。题库仍保存在同一个油猴脚本存储中,可在不同网站访问。
|
||||
|
||||
## 本次方案:按题库分别统计、搜索和导出
|
||||
|
||||
@@ -28,7 +41,7 @@
|
||||
## 文字搜索
|
||||
|
||||
- 输入或粘贴完整题干、题干片段、选项内容或标准答案关键词,支持按钮、回车和输入后自动查询,也可点“清空”。
|
||||
- “搜索题库”可选当前库、任意已保存库或全部库;默认当前库。搜索范围与导出范围独立,跨库查答案不会让导出自动变成全部。
|
||||
- “搜索题库”可选当前库、任意已保存库或全部库;已识别练习页默认当前库,普通网页默认全部库。搜索范围与导出范围独立,跨库查答案不会让导出自动变成全部。
|
||||
- “搜索内容”可选全部文字、仅题干、仅选项、仅标准答案;多个关键词可用空格分隔,按同时包含处理。
|
||||
- 结果标注命中题干、选项或答案,显示来源题库。只把已确认答案用于答案字段搜索,冲突和待补记录仍可通过题干找到。
|
||||
- 每次最多展示 50 条结果,可细化关键词继续查找。
|
||||
@@ -46,11 +59,12 @@
|
||||
| 操作 | 效果 | 恢复方式 |
|
||||
| --- | --- | --- |
|
||||
| 右上角“收起” | 只显示面板标题栏 | 点击“展开” |
|
||||
| 右上角“隐藏” | 面板隐藏,默认保留圆形“题库”按钮 | 点击悬浮按钮 |
|
||||
| 设置中取消“隐藏时保留悬浮按钮”,再隐藏 | 面板和悬浮按钮均隐藏 | **Alt + Shift + Q** 或油猴菜单 |
|
||||
| 油猴菜单“完全隐藏题库助手” | 直接完全隐藏 | **Alt + Shift + Q** 或菜单“显示题库助手” |
|
||||
| 打开或刷新网页 | 默认完全隐藏,无悬浮按钮 | **Shift + Alt + Q** |
|
||||
| 右上角“隐藏” | 面板完全隐藏 | **Shift + Alt + Q** |
|
||||
| **Shift + Alt + Q** | 在显示与隐藏之间切换 | 再按一次 |
|
||||
| 油猴菜单“显示题库助手” | 手动显示面板 | 右上角隐藏或快捷键 |
|
||||
|
||||
显示状态、悬浮按钮偏好和复制开关会保留,刷新后继续生效。隐藏时划选题干仍会更新查询,但不会重新弹出面板。隐藏与暂停采集是独立操作;需要暂停时,使用“题库 / 导出”中的“暂停采集”。
|
||||
复制开关等设置会保留;面板在每次加载后均重置为隐藏,连续自动选择也会关闭。隐藏时划选题干仍会更新查询,但不会重新弹出面板。隐藏、采集和连续自动选择是独立操作;隐藏面板不会停止你在当前页已开启的连续选择,停止时请先关闭相应开关。
|
||||
|
||||
## 正确答案如何防止错位
|
||||
|
||||
@@ -81,7 +95,7 @@ JSON 备份包含 `schemaVersion: 1` 和 `records` 数组,保留完整选项
|
||||
|
||||
## 采集范围与当前验证边界
|
||||
|
||||
脚本在当前账号正常练习时,观察已收到的题目 / 答案响应,并补充当前页面 DOM。不主动提交答案。接口没有提供标准答案时,保留待补状态;仅安装脚本不会凭空补出答案。
|
||||
脚本在当前账号正常练习时,观察已收到的题目 / 答案响应,并补充当前页面 DOM。自动选择只操作对应选项,网站可能按自身规则保存作答。接口没有提供标准答案时,保留待补状态;仅安装脚本不会凭空补出答案。
|
||||
|
||||
目前适配了保存页面中的真实题目结构,以及业务脚本中可确认的练习接口:`/upm/start`、`/upm/wrong/start`、`/pra/{id}/questions` 和对应单题作答结果。接口适配限制在本站及学习平台域名。脚本不发送题库到外部服务器,来源 URL 不保存查询参数。
|
||||
|
||||
@@ -95,6 +109,7 @@ JSON 备份包含 `schemaVersion: 1` 和 `records` 数组,保留完整选项
|
||||
|
||||
- `src/core.js`:答案规范化、去重与冲突、检索、字母映射、CSV。
|
||||
- `src/adapter.js`:本站响应观察、题目 DOM 读取、复制恢复。
|
||||
- `src/autofill.js`:精确答案匹配、标准选项操作与连续选择。
|
||||
- `src/app.js`:面板、隐藏恢复、存储、导入导出。
|
||||
|
||||
```powershell
|
||||
|
||||
Reference in New Issue
Block a user