火车头采集规则首页与内页怎样分配任务:按列表页与详情页拆分

📍 WDQWDWQD987AAAAA:216.73.216.23
📱 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
🔗 /af54807ef456.html
📄

火车头采集规则首页与内页怎样分配任务:按列表页与详情页拆分

火车头采集规则里,首页任务通常负责抓列表和翻页,内页任务负责抓详情字段,两者通过“采集网址”和“内容页网址”衔接。判断分配是否合理,看三点:列表页能否稳定翻页、详情页是否只处理单条记录、字段是否各归其位。下面按已有项目改进的角度说明。

先分清首页任务和内页任务各自管什么

在火车头采集器里,一条采集规则通常包含“采集网址”和“采集内容”两个环节。首页任务对应列表页:从一个入口页开始,提取所有详情页链接,并处理下一页。内页任务对应详情页:拿到单条链接后,提取标题、正文、时间、作者等字段。

如果首页任务同时抓正文,或内页任务负责翻页,规则会变复杂,出错时也难定位。更稳的做法是让首页只产出链接,内页只消费链接。

首页任务的配置要点

首页任务的核心是“找到所有详情页链接,并走到最后一页”。具体检查项:

验收信号:首页任务跑完后,网址库里的链接数量与列表页实际条目大致吻合,且每条都能打开详情。

内页任务的配置要点

内页任务拿到网址后,只做字段提取。具体检查项:

验收信号:随机抽查几条记录,标题完整、正文无多余模块、时间格式统一。

首页与内页怎样衔接

常见做法是:首页任务采集网址,内页任务采集内容,两者通过网址传递。如果目标系统支持,也可以让首页任务直接产出待采集列表,再由内页任务逐条处理。

假设一个项目有10个栏目,每个栏目都有分页。可以让首页任务按栏目分别建规则,内页任务共用一套字段规则。这样改版时只需调整对应栏目的列表规则,不影响其他栏目。

适用条件:列表结构一致、详情页模板一致时,共用内页规则效率最高;如果不同栏目详情页结构差异大,就按模板拆成多套内页规则。

改进时的排查顺序

  1. 先单独跑首页任务,确认链接数量和翻页都正常。
  2. 再单独跑内页任务,用几条已知链接测试字段。
  3. 最后串联运行,观察是否有重复、漏采或字段错位。
  4. 发布前抽查,确认目标系统里的内容与源页面一致。

如果出现漏采,先判断是首页没抓到链接,还是内页没提取到字段;这两类原因的排查方向不同,不要直接改字段规则。

下一步:拿现有规则,先只保留首页任务跑一遍,记录网址库数量,再决定内页规则是否需要拆分。

图1 图2

nginx