Agent Skills
返回列表
报纸广告检测

报纸广告检测

数据分析 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_e1929702/ljs20260511。

技能介绍

要解决什么问题

研究历史报纸或做媒介史分析时,典藏站上的版面往往是整页扫描图:商业广告、公益告示和分类栏混在正文与插图之间。人工逐页标注成本高,而站点又常带 SSRF 限制、会话 Cookie 与 Referer 校验,直接拿浏览器工具拉图容易失败或只拿到几 KB 的缩略图,OCR 几乎读不出有效文本。

技能如何工作

本技能把从页面访问到结果归档串成固定流程:先检查 Tesseract OCR 与本地代理(如 Clash 127.0.0.1:7897);对 NewspaperSG(eresources.nlb.gov.sg)等域名用 exec + curl + 代理 拉 HTML,而不是浏览器导航。拉图时必须同时带上 -b cookies.txt 与正确的 Referer,否则仍是缩略图。

拿到页面后,根据图片 URL 中的 ct 参数区分 ARTICLE+ILLUSTRATION(正文/插图,非广告)、ADVERTISEMENT、CLASSIFIED 等;若全是正文类或混合,再按区域(如 area=1,10,20,26)下载切片并跑 OCR,用关键词表(如 assets/ad_keywords.txt)辅助识别。识别出的条目会归入商业广告、公益广告、分类广告,并可输出每条的位置描述(左上/侧栏/横幅等)、有图/无图、约占版面比例与内容摘要。结果写入 {workspace}/newspaper_ads/{date}_{newspaper_name}/,配合 scripts/extract_ocr.py、archive_results.py 与可配置的 classification_rules.json。

适用边界与注意点

  • SSRF:浏览器工具不能访问被策略拦截的内网/特定域名;应固定使用 curl.exe -x http://127.0.0.1:7897 模式(Windows 上勿用 PowerShell 的 curl 别名)。
  • 选图 DOM:勿用泛泛的 querySelectorAll('img'),应针对报纸内容节点如 img.image-content,避免把站点 UI 图标当版面。
  • OCR 漏检:不能只看 ct=;需系统性下载各区域 OCR。Tesseract 路径在 Windows 上可能在 C:\Program Files\Tesseract-OCR\tesseract.exe。
  • 含 &、-- 的长命令在 PowerShell 中易解析失败,宜写入 .ps1 脚本执行。

使用场景

  • 从 NewspaperSG(eresources.nlb.gov.sg)按文章页拉 HTML,用 curl 带 Cookie 与 Referer 下载全尺寸版面图,再跑 Tesseract 区分广告与正文。
  • 研究 Chronicling America 等典藏时,需根据图片 URL 的 `ct` 参数判断 ADVERTISEMENT/CLASSIFIED,并对混合版面按 area 分区 OCR 扫广告关键词。
  • 要把识别结果按商业、公益、分类三类归档,并为每条广告写清相对位置(侧栏/底栏)、有图或无图及约占版面比例。
  • 浏览器因 SSRF 无法打开 NLB 资源站时,改用 exec 调用 curl.exe 走本地 Clash 代理完成整页抓取与切片 OCR。

适合人员

  • 做媒介史或广告史研究的学者,需要把在线报纸典藏里的商业/分类广告从正文中拆出并导出可分析的 JSON/CSV。
  • 参与 NewspaperSG、Chronicling America 等项目的编目或标注人员,要按技能流程写广告位置说明与类型分类。
  • 在 Windows 上维护典藏抓取流水线的人,需处理 Tesseract 路径、curl.exe 与 `.ps1` 脚本以避免 PowerShell 解析错误。
  • 构建自定义分类规则的研究助理,会改 `classification_rules.json` 与 `ad_keywords.txt` 以适配特定语种或时期的版面用语。