feat: collect judgment standards through opt-in normal practice

This commit is contained in:
suanyuit-cyber
2026-10-30 04:32:48 +08:00
parent 6ba4905a7d
commit fcc8390faa
9 changed files with 1153 additions and 24 deletions
+20 -5
View File
@@ -1,6 +1,8 @@
# 华谊题库助手
支持在普通 HTTP / HTTPS 网页中通过快捷键打开的本地题库油猴脚本:文字搜索、划词检索、自动选择已确认答案,并保留华谊练习平台的按库采集、CSV 导出与多题库导入。当前版本 **1.2.6**。
支持在普通 HTTP / HTTPS 网页中通过快捷键打开的本地题库油猴脚本:文字搜索、划词检索、自动选择已确认答案,并保留华谊练习平台的按库采集、CSV 导出与多题库导入。当前版本 **1.2.7**。
1.2.7 新增默认关闭的“补齐当前判断题库”。手动启动后会通过正常练习控件逐题作答,等待网站标准反馈与同题可信入库记录一致后再进入下一题;这会改变练习记录。只支持本站500题或232题的正常判断练习,不支持普通网页、正式考试或错题重做。该功能与普通自动选择互斥,详见下方使用说明。当前发布题库仍为1261题已确认、623题待补,功能发布不代表剩余答案已经采集完成。
**2026-10-30 答案来源更正:此前“1884题标准答案全部确认”的结论错误。** Chrome 实际练习和页面业务代码均证实,`/upm/start`、`/upm/wrong/start` 的未作答判断题也可能带有默认 `judgeAnswer: 0`,该值不能视为标准“错误”;旧值为 `1` 且没有提交或标准反馈证据时也不能确认。1.2.6 将这类旧判断题答案改为“待补”,清除仅由列表占位值及其继承 DOM 观察造成的冲突,并保留原值备份。两个可信标准答案不一致时仍保留冲突。
@@ -47,7 +49,9 @@
## 自动答题
旧判断题库中未获可信反馈的题目显示“待补”,不会自动选择。已有候选结果与“当前题对应”分别展示;相似搜索结果或候选记录不能代替当前题的完整题干、选项及身份核对。
### 普通自动选择
普通自动选择模式只使用本地已确认答案。旧判断题库中未获可信反馈的题目显示“待补”,在此模式下跳过。已有候选结果与“当前题对应”分别展示;相似搜索结果或候选记录不能代替当前题的完整题干、选项及身份核对。
打开“自动答题”页签,先导入包含标准答案的题库,然后选择:
@@ -56,10 +60,20 @@
单选按答案内容选择当前选项;多选同步完整正确集合,取消已经选中的错误项;判断题按“正确 / 错误”对应。候选答案冲突、题干或选项不完整、重复文字无法唯一对应、选项不可操作时跳过,显示原因。
选择完成后由你检查并提交或进入下一题。脚本不会点击提交、交卷、下一题按钮。华谊练习中的选项点击可能触发网站自身的作答响应,具体行为由练习页面决定。
普通自动选择完成后由你检查并提交或进入下一题;此模式不会点击提交、交卷或下一题按钮。华谊练习中的选项点击可能触发网站自身的作答响应,具体行为由练习页面决定。
自动选择支持华谊题目 DOM,以及标准 `fieldset + legend + label + radio/checkbox` 和明确题目容器结构。全网页显示不代表能自动识别任意网站的自定义答题控件;无法识别时可继续使用文字搜索。题库仍保存在同一个油猴脚本存储中,可在不同网站访问。
### 手动启动判断题库补齐
**“补齐当前判断题库”会真实进行正常练习作答,增加累计答题及对错记录。** 它默认关闭,不会因打开网页、导入题库或显示面板自动启动。请先打开本站500题或232题的正常判断练习,保持采集开启并等待当前题库身份及完整题目加载,再进入“自动答题”页签点击“补齐当前判断题库”。普通网页、正式考试和错题重做不能使用。
启动后从第1题逐题核对题库、位置、题目ID、完整题干和选项。已有可信标准答案的题目会跳过作答;待补题通过正常选项控件选择“正确”一次,以触发网站返回标准反馈。**这个选择只是取得反馈的练习作答,不能当作正确答案保存**;网站给出的标准可能是“正确”或“错误”。只有当前网页标准反馈与同题可信入库记录一致后,才点击正常“下一题”。身份、来源或答案不一致,或者反馈迟迟不到时停止,保留当前结果供核对。
可随时点击“停止补齐”。暂停采集、切换题库、离开页面、导入题库或发生存储异常时也会停止。隐藏或收起面板后仍会继续;隐藏后按 **Shift + Alt + Q** 恢复面板,收起后点击“展开”,再点击“停止补齐”。刷新后保持关闭,不会自动恢复。启动补齐会先停止普通自动选择,启用连续自动选择或点击“答当前题”也会先停止补齐,避免两种模式同时操作。
补齐模式会按上述核验结果点击“下一题”,但不会点击结束、交卷或末题提交按钮。只有全部标准题目位置均有可信答案时才显示完成;当前发布的623道待补题仍需实际取得网站反馈,不能由脚本版本号或进度推定已补齐。
## 本次方案:按题库分别统计、搜索和导出
旧版会累积的原因是:默认选择“全部题库”,主统计也是所有本地记录的总数,导出文件统一叫“华谊题库”。保存多个题库本身是正常行为,但当前库的展示与导出范围应该明确区分。
@@ -96,7 +110,7 @@
| **Shift + Alt + Q** | 在显示与隐藏之间切换 | 再按一次 |
| 油猴菜单“显示题库助手” | 手动显示面板 | 右上角隐藏或快捷键 |
复制开关等设置会保留;面板在每次加载后均重置为隐藏,连续自动选择也会关闭。隐藏时划选题干仍会更新查询,但不会重新弹出面板。隐藏、采集和连续自动选择是独立操作;隐藏面板不会停止你在当前页已开启的连续选择,停止时请先关闭相应开关。
复制开关等设置会保留;面板在每次加载后均重置为隐藏,连续自动选择和判断题补齐均关闭。隐藏时划选题干仍会更新查询,但不会重新弹出面板。隐藏面板不会停止当前页已开启的连续选择或判断题补齐;请恢复面板后关闭连续选择开关,或点击“停止补齐”。暂停采集会停止判断题补齐。
## 正确答案如何防止错位
@@ -130,7 +144,7 @@ JSON 备份包含 `schemaVersion: 1` 和 `records` 数组,保留完整选项
## 采集范围与当前验证边界
脚本在当前账号正常练习时,观察已收到的题目 / 答案响应,并补充当前页面 DOM。自动选择只操作对应选项,网站可能按自身规则保存作答。接口没有提供标准答案时,保留待补状态;仅安装脚本不会凭空补出答案。
脚本在当前账号正常练习时,观察已收到的题目 / 答案响应,并补充当前页面 DOM。普通自动选择只操作对应选项,网站可能按自身规则保存作答;手动启动的判断题补齐按上述流程进行正常练习及换题。接口没有提供标准答案时,保留待补状态;仅安装脚本不会凭空补出答案。
目前适配了保存页面中的真实题目结构,以及业务脚本中可确认的练习接口:`/upm/start`、`/upm/wrong/start`、`/pra/{id}/questions` 和对应单题作答结果。接口适配限制在本站及学习平台域名。脚本不发送题库到外部服务器,来源 URL 不保存查询参数。
@@ -160,6 +174,7 @@ npm run merge:banks -- --manifest 题库/页面题数核对.json --allow-partial
- `src/core.js`:答案规范化、去重与冲突、检索、字母映射、CSV。
- `src/adapter.js`:本站响应观察、题目 DOM 读取、复制恢复。
- `src/autofill.js`:精确答案匹配、标准选项操作与连续选择。
- `src/collector.js`:手动启动当前判断练习的逐题作答、反馈核验、换题与停止。
- `src/app.js`:面板、隐藏恢复、存储、导入导出。
```powershell