140 lines
6.3 KiB
Markdown
140 lines
6.3 KiB
Markdown
# 课题组逐院系 · 完备性重做 · 苏格兰皇家音乐学院(Royal Conservatoire of Scotland)· `rcs.ac.uk`
|
||
前一轮判**收 0**(7 个 cluster 是校级「seven research clusters」,按粒度不收)。
|
||
⚠️ **复验**:有没有更细的具名组。 · Manager 2026-09-23
|
||
|
||
## 0. 为什么全部重做(实测数据)
|
||
|
||
用户裁定:**所有学校都要补一遍。**
|
||
|
||
**依据**:5 所已按完备性重做的学校,数字对比 ——
|
||
|
||
| 学校 | 重做前 | 重做后 | 倍数 |
|
||
|---|---|---|---|
|
||
| 爱丁堡 | 22 | **643** | **29×** |
|
||
| 曼彻斯特 | 未开始 | **268**(32 院系) | — |
|
||
| 伯明翰 | 32 | **258**(未取页=0) | **8×** |
|
||
| 圣安德鲁斯 | 34 | **178** | 5× |
|
||
| 西澳 | 0 | **154**(组/系 7.0) | — |
|
||
|
||
**⇒ "逐院系枚举不全"是系统性的,不是个别学校。没重做的数都不可信。**
|
||
|
||
**先读**:`/Users/jun/Codes/prodream/.worklogs/groups-dept/` 下
|
||
`REPORT.md`(布里斯托切片)· `finding_edinburgh_v2.md`(**完备性标杆,照它的做法**)。
|
||
|
||
---
|
||
|
||
## 1. 本波只做这一所:**苏格兰皇家音乐学院(Royal Conservatoire of Scotland)· `rcs.ac.uk`
|
||
前一轮判**收 0**(7 个 cluster 是校级「seven research clusters」,按粒度不收)。
|
||
⚠️ **复验**:有没有更细的具名组。**
|
||
|
||
---
|
||
|
||
## 2. 完备性门槛(**硬门槛,不是"尽量"**)
|
||
|
||
### 2.1 必交台账(**缺一行就是没做完**)
|
||
|
||
| 院系(该校**全部**) | research 入口 URL | 状态 | 组数 |
|
||
|---|---|---|---|
|
||
| … | … | `取到` / `取不到:<原因>` | N |
|
||
|
||
- 院系清单 = 该校**全部**(从官方 faculties/schools/departments 导航 + Sub-units A-Z 拿)
|
||
- **给出枚举来源 URL 与总数**
|
||
- **`未取页 = 0`**:要么取到,要么有"取不到"的证据(404 / 重定向 / 空壳 / 反爬)
|
||
|
||
### 2.2 子域 / 外站**必须跟**
|
||
|
||
爱丁堡实测跟了 **117 个子域 + 39 个外站** —— 不跟就整块漏。
|
||
**给出你找到并跟过的子域/外站清单。**
|
||
|
||
### 2.3 合理性校验
|
||
|
||
`组数 ÷ 枚举到的院系数`。基准:伦敦布里斯托 ≈5.8 / 爱丁堡 ≈25.7(**因校而异,不比大小,只看是否荒谬地低**)。
|
||
|
||
**比值明显偏低 ⇒ 往下挖一层**:该校院系是不是把研究组织成 theme/centre(大一级,不收),
|
||
而底下挂着更细的**具名组**(尤其留意 **"each led by a Principal Investigator"** 这类 PI-group 目录 ——
|
||
爱丁堡漏掉的就是四个 PI 目录,其中一个就有 140 条)。
|
||
**确认"再下一层没有组"必须贴原文结构作证。**
|
||
|
||
---
|
||
|
||
## 3. ⚡ 效率:**启发式自动抽 + 抽样核 30 条**(用户明确要求,不要迂腐)
|
||
|
||
用户原话:
|
||
> 「不需要你六百多条逐页核实呀…**你随便抽样一小部分,确认它是 OK 的,那就可以用了呗**。
|
||
> **你肯定要去找这种最高效的方式啊。启发式的方式。**」
|
||
|
||
### 第一步:启发式自动抽(**全量,不逐页判**)
|
||
机械判据批抽:有独立页面 + 页面里有**具名的人**(title 含 Prof/Dr 或 person 链接)
|
||
+ **有方向文字块** + 名字不是「索引页/课程/项目/学生群体/讲座系列」。
|
||
自述含 `federation` / `N academics` / 校级研究所 ⇒ 标 `big`;**标 `big` 页面里点名的内层组再收一层**。
|
||
|
||
### 第二步:**随机抽 30 条**逐条开页面核(**这是质量证据**)
|
||
给:**准确率** · 假的那几条**属于哪一类**(附页面原文)· 该类型**能否定点修掉**
|
||
|
||
### 第三步:二选一
|
||
- 准确率 **≥90% 且假阳性类型集中** ⇒ **定点修那一类,全量直接用**。抽样 30 条写进报告当证据。
|
||
**不要再逐页核。**
|
||
- 假阳性散、类型不集中 ⇒ 才扩大抽样
|
||
|
||
**省下的时间全部用来把院系覆盖做全 —— 那才是真正的缺口。**
|
||
|
||
---
|
||
|
||
## 4. 判据(不变)
|
||
|
||
> **打开页面像人一样看:这是不是一个「导师带的做研究的团队」?**
|
||
> **粒度上限 = 一个导师能带的规模。** 大一级(institute/theme/cluster/校级研究所)**不收**;
|
||
> **但大一级下面挂着真组时,只收内层组。**
|
||
|
||
**不是组**:服务设施 · 研讨会系列 · 项目 · 学生培养计划 · 单项研究 · 空页重定向 · 无负责人的方向页。
|
||
**共性是页面上有一句「非团队自述」——你去看那句话。**
|
||
|
||
### 五字段
|
||
|
||
| # | 字段 | 取法 |
|
||
|---|---|---|
|
||
| 1 | 课题组名称 | 该组**自己页面**的 H1 |
|
||
| 2 | 所在大学及研究中心 | 大学 + **真实上级研究单位**;⚠️ 上级是系/院/学部的**不许当研究中心写**,没有真上级就**只写大学** |
|
||
| 3 | 研究方向 | 该组页上的方向文字。**没有 ⇒ 不要** |
|
||
| 4 | 联系邮箱 | 只接受**本组页 / 本组负责人页**的邮箱 |
|
||
| 5 | 最近五年论文数 | 一律 null |
|
||
|
||
---
|
||
|
||
## 5. ⚠️ 并行安全(前面出过事故)
|
||
|
||
上一波 5 个 worker **挤在同一个 Space 的同一个 page 上**,297 页里出现**跨校串页**,整批作废。
|
||
|
||
**你必须**:
|
||
1. **自己新建一个 TaskSpace**(不要复用别人已有的)
|
||
2. **每个 URL 用独占的新 page**(`newPage()`),**不要共用 p1**
|
||
3. **每取一页后校验 `page.url()` 与目标一致**;不一致 ⇒ 该页作废重取
|
||
4. 成功时收尾调一次 `await task.finish({ keep: [] })`;**因错误停止就别调**,把 `spaceId` 报上来
|
||
|
||
---
|
||
|
||
## 6. 交付
|
||
|
||
1. **完备性台账**(全部院系)+ 枚举来源 URL 与院系数
|
||
2. **子域/外站清单**
|
||
3. **全量候选产物**(五字段,启发式抽的)
|
||
4. **抽样 30 条逐条判定表** + **准确率** + **假阳性类型与定点修法**
|
||
5. **反例 / 判不准 / 未验清单**(附页面原文)
|
||
6. 一句话:**最终组数?完备性有没有缺口?**
|
||
|
||
产物写到 `.worklogs/groups-dept/`,按 school-slug 命名(加 `_v2` 后缀避免覆盖旧的)。
|
||
|
||
---
|
||
|
||
## 7. 硬要求
|
||
|
||
1. **只读**:只写产物到 `.worklogs/groups-dept/`。不写索引、不改业务代码、不动数据。
|
||
2. **不设时间盒,做完整为止。** 但**每做完一个院系报一次 `status`**(三句话)。
|
||
3. **判据来自页面。你的眼睛比任何正则都准。**
|
||
4. **不许发明**:抓不到 ⇒ 写「未验」+ 卡点(URL、错误原文)。判不准的贴出来。
|
||
5. **只做这一所学校。**
|
||
|
||
## 8. 边界
|
||
|
||
- 不碰 prodream_backend、不碰 FE、不碰 `.worklogs/groups-rebuild/` 与 `groups-verify/`。
|