Files

5.9 KiB
Raw Permalink Blame History

课题组逐院系 · 完备性重做 · 爱丁堡大学(University of Edinburgh)· ed.ac.uk

前一轮出 22 组 —— 明显偏低(它跟了 20+ 子域,比约克大得多却只有约克的 1/4)。 · Manager 2026-09-23

0. 为什么重做(前几波的教训,读之前先读这段)

用户明确要求:

「之前不是说这个数量对不上吗?那数量对不上,你没有重新把那些没 kill 掉重新去找吗? 就是我们这数据完备性是非常重要的呀。」

上一轮的设计缺陷在我:我给了 75 分钟时间盒、任务书写「到点先交已完成的」—— 这个设计结构上就产出半成品。实测后果:

  • 伯明翰只抓了 98 个 URL(85 成功),另有 94 个二级页未取
  • 圣安德鲁斯的子域只验了 1 个
  • 爱丁堡出 22 组(跟了 20+ 子域,绝不止这个数)

⇒ 本波改设计:1 个 worker 只做 1 所学校;不设时间盒;"未取页 = 0" 是交付门槛。

先读:

  • /Users/jun/Codes/prodream/.worklogs/groups-dept/REPORT.md(布里斯托切片 = 质量基准,174 组、组/系 ≈5.8)
  • 该校已有的 finding_<slug>.md(前一轮的半成品,参考可以,但不要信它的"结论")

1. 本波只做这一所:**爱丁堡大学(University of Edinburgh)· ed.ac.uk

前一轮出 22 组 —— 明显偏低(它跟了 20+ 子域,比约克大得多却只有约克的 1/4)。**


2. 完备性判据(本波的交付门槛,不是"尽量")

2.1 必须交这张台账(缺一行就是没做完)

院系(该校全部) research 入口 URL 状态 组数
… … 取到 / 取不到:<原因> N
  • 院系清单必须是该校的「全部」 —— 从学校官方的 faculties/schools/departments 导航拿, 或从 sitemap 枚举。给出你枚举的来源 URL 与总数。
  • 取不到 必须给原因(404 / 重定向 / 无 research 页 / 反爬 …),不许留空
  • ⚠️ 未取页 = 0 —— 要么取到,要么有"取不到"的证据。

2.2 子域 / 外站必须全部跟

布里斯托实测有 bristolmathsresearch.org、bristolroboticslab.com、pluslab.bristol.ac.uk、 vilab.blogs.bristol.ac.uk 这类不在主域下的研究单元 —— 不跟就整整漏掉一块。 给出你找到并跟过的子域/外站清单。

2.3 合理性校验(必交)

组数 ÷ 枚举到的院系数 = 组/系

基准:布里斯托 ≈5.8(174 组 / ~30 系)。

  • 比值 ≥ 3 ⇒ 正常
  • 比值 < 3 ⇒ 必须解释,并回答:该校的院系是不是把研究组织成 theme / centre / institute (大一级,按用户裁定不收),而底下其实还挂着更细的具名组? 若是 ⇒ 往下挖一层,把那些内层组收上来。
  • 若确认"再下一层没有具名组" ⇒ 贴出该院系 research 页的原文章节结构作为证据 (有哪些 section、每节里是什么)。 「没找到」和「没有」必须分得清。

3. 判据(不变)

打开页面像人一样看:这是不是一个「导师带的做研究的团队」? 粒度上限 = 一个导师能带的规模。 大一级(institute / theme / cluster / 校级研究所)不收;但大一级下面挂着真组时,只收内层组。

不是组:服务设施 · 研讨会系列 · 项目 · 学生培养计划 · 单项研究 · 空页重定向 · 无负责人的方向页。共性是页面上有一句「非团队自述」——你去看那句话。

五字段

# 字段 取法
1 课题组名称 该组自己页面的 H1
2 所在大学及研究中心 大学 + 真实上级研究单位;⚠️ 上级是系/院/学部的不许当研究中心写,没有真上级就只写大学
3 研究方向 该组页上的方向文字。没有 ⇒ 不要
4 联系邮箱 只接受本组页 / 本组负责人页的邮箱
5 最近五年论文数 一律 null

4. ⚠️ 并行安全(上一波在这里出过事故,必须照做)

上一波 5 个 worker 挤在同一个 Space 的同一个 page 上,297 页里出现跨校串页 (QUB 记录里混进 Bath 的正文与邮箱),整批作废。

你必须:

  1. 自己新建一个 TaskSpace(不要复用别人已存在的 Space)
  2. 每个 URL 用独占的新 page(newPage()),不要共用 p1
  3. 每取一页后校验 page.url() 与目标 URL 一致;不一致 ⇒ 该页作废重取
  4. 收尾调一次 await task.finish({ keep: [] })(成功时); 因错误停止就别调,把 spaceId 报上来

5. 交付

  1. 完备性台账(§2.1 那张表,全部院系)+ 枚举来源 URL 与院系数
  2. 子域/外站清单
  3. 组/系 的比值 + 解释(含"再下一层有没有组"的证据)
  4. 抽样 15 条五字段产物(贴出来)
  5. 反例清单 / 判不准清单 / 未验清单(各自附页面原文)
  6. 一句话:这所学校的最终组数是多少?完备性有没有缺口?

产物写到 .worklogs/groups-dept/,按 school-slug 命名。


6. 硬要求

  1. 只读:只写产物到 .worklogs/groups-dept/。不写索引、不改业务代码、不动数据。
  2. 不设时间盒 —— 做完整为止。 但每做完一个院系报一次 status(三句话), 这样即使中途出问题,Manager 也知道你到哪了、缺什么。
  3. 判据来自页面、来自你自己看。 你的眼睛比任何正则都准。
  4. 不许发明:抓不到 ⇒ 写「未验」+ 卡点(URL、错误原文)。判不准的贴出来,不要归类掉。
  5. 只做这一所学校,别碰别的。

7. 边界

  • 不碰 prodream_backend、不碰 FE、不碰 .worklogs/groups-rebuild/ 与 groups-verify/。