feat: publish verified five-bank question dataset
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
# 华谊题库助手
|
||||
|
||||
支持在普通 HTTP / HTTPS 网页中通过快捷键打开的本地题库油猴脚本:文字搜索、划词检索、自动选择已确认答案,并保留华谊练习平台的按库采集、CSV 导出与多题库导入。当前版本 **1.2.3**。
|
||||
支持在普通 HTTP / HTTPS 网页中通过快捷键打开的本地题库油猴脚本:文字搜索、划词检索、自动选择已确认答案,并保留华谊练习平台的按库采集、CSV 导出与多题库导入。当前版本 **1.2.4**。
|
||||
|
||||
1.2.4 在完整选项ID与正文映射一致时,可准确对应文字相同的不同选项;ID变化且文字有歧义时继续跳过。新增对旧版乘号、正负号实体记录的有证据补全,保留原始备份。缺少题目位置等依据的旧记录继续保留,仓库中的五库全集使用各库最新、题数与索引均已核验的完整网络批次。
|
||||
|
||||
1.2.3 保留题干及选项中的图片地址,支持纯图片的化学结构式选项;修复多选题中多个正确选项文字相同而误报冲突的问题。只有部分同文选项正确、无法确定位置时仍跳过。图片题的答案继续按选项 ID 对应,CSV / JSON 保留图片来源地址;CSV 本身不嵌入图片像素。
|
||||
|
||||
@@ -8,6 +10,8 @@
|
||||
|
||||
安装文件:[`dist/huayi-question-bank.user.js`](dist/huayi-question-bank.user.js)。这是构建后的完整脚本,无须安装 Node.js 或运行服务器。
|
||||
|
||||
五个题库已于2026-10-29从Chrome导出并合并为 **1884题**,标准答案全部确认。可直接使用 [`合并CSV`](题库/华谊集团化工总控工(高级)-合并题库.csv) 或 [`JSON备份`](题库/华谊集团化工总控工(高级)-合并题库.json);独立分库、31张原图和校验清单见 [`题库说明`](题库/README.md)。
|
||||
|
||||
## 安装与开始使用
|
||||
|
||||
1. 在浏览器中安装并启用 Tampermonkey(油猴)。
|
||||
@@ -115,20 +119,25 @@ JSON 备份包含 `schemaVersion: 1` 和 `records` 数组,保留完整选项
|
||||
|
||||
目前适配了保存页面中的真实题目结构,以及业务脚本中可确认的练习接口:`/upm/start`、`/upm/wrong/start`、`/pra/{id}/questions` 和对应单题作答结果。接口适配限制在本站及学习平台域名。脚本不发送题库到外部服务器,来源 URL 不保存查询参数。
|
||||
|
||||
本地分析时使用的原保存 HTML 显示判断题库共 500 题,实际只含第 62 题的题干和选项,没有该题标准答案。原始网页及其资源文件不纳入仓库;仓库中的浏览器测试使用脱敏的最小题目结构夹具。离线页面不能单独还原 500 道题或全部答案,在线正常练习能否一次返回全部题目和全部标准答案,仍需要在实际登录页面确认。
|
||||
原保存HTML用于结构适配,原始网页及资源文件不纳入仓库;浏览器测试使用脱敏的最小题目结构夹具。2026-10-29已在实际登录的Chrome学习页面逐库验证:判断500/232题、单选500/401题、多选251题,正常加载的完整批次均包含标准答案,合并文件已按页面题数和完整题目位置核验。
|
||||
|
||||
题库保存在油猴脚本存储中,关闭面板、刷新或暂停采集不会清空。更换浏览器、卸载脚本或清理扩展数据前,请先导出 JSON 备份。
|
||||
|
||||
## 源码与验证
|
||||
|
||||
`题库/` 用于保存从 Chrome 导出的题库和合并结果。合并工具会保留来源题库、标准答案、解析及 ID 别名,并检查五库是否齐全、题数与页面是否一致:
|
||||
`题库/` 已保存从Chrome导出的五库及合并结果。批次选择工具仅接受时间最新、题数与页面一致且位置完整的网络批次,再由合并工具保留来源、标准答案、解析及ID别名并核对五库:
|
||||
|
||||
```powershell
|
||||
npm run merge:banks -- --manifest 页面题数.json --per-bank 五个导出文件.csv
|
||||
$rawBankExports = Get-ChildItem exports/browser-20261029 -Filter '*_v123.csv' -File
|
||||
npm run select:snapshots -- --manifest 题库/页面题数核对.json --force $rawBankExports.FullName
|
||||
$bankCsvFiles = Get-ChildItem 题库/分题库 -Filter '*.csv' -File
|
||||
npm run merge:banks -- --manifest 题库/页面题数核对.json $bankCsvFiles.FullName
|
||||
```
|
||||
|
||||
页面清单格式为 `{"banks":[{"bankName":"完整题库名称","questionCount":500}, ...]}`,需要列出判断1、判断2、单选1、单选2和多选五个题库。合并前会核对缺库、缺答案和冲突,详情写入输出的 `题库清单.json`;数据未齐时不标记为完整。
|
||||
|
||||
本次五份原始CSV含1899条缓存记录,选择五个最新完整批次后为1884题,15条历史表示版本保留在原始下载中;来源哈希与排除标识记在 `导出批次核对.json`。本地 `exports/` 不上传仓库,复现选择阶段需要保留原始CSV。再次生成已有合并文件时,可显式加 `--force` 覆盖本次固定输出。
|
||||
|
||||
无需第三方前端依赖,源码分为:
|
||||
|
||||
- `src/core.js`:答案规范化、去重与冲突、检索、字母映射、CSV。
|
||||
|
||||
Reference in New Issue
Block a user