用途:面向中文版机器翻译报纸 PDF,为聊天中的 AI 提供干净、稳定、低依赖的输入,支持“先浏览重点文章列表,再逐篇深挖”的阅读流。
主要能力:本地脚本负责解析输入、下载 PDF、优先用 pdftotext 提取文字层,失败时自动 fallback 到 PyMuPDF,写出页级文本到 text/<paper_slug>/page-XXX.txt 并生成 results.json,处理结束后删除本地工作 PDF。脚本不做本地文章切分、重点排序、摘要生成,也不默认走 OCR 主流程。
使用方式:主入口为 extract.py,支持 --source-config、--url、--urls 三种输入。示例:python3 daily-press-scanner/scripts/extract.py --source-config daily-press-scanner/configs/sources.example.json --out-dir ./out --run-date 2026-03-29。source-config 支持 {year}、{month}、{day}、{date} 占位符,不传 --run-date 默认使用当天日期。scan.py 仅保留兼容 wrapper,不应作为主入口。
聊天使用:Browse Mode 首次回答优先返回重点文章列表,每篇带编号、标题、页码和 1-2 句简介;Read Mode 在用户点名后返回整理版正文、长摘要或结构化要点,并在尾部重贴简版文章列表。展开时依据编号定位标题与页码,回到相关页文本提取整理,页内多篇内容优先按标题和上下文定位。上下文接近上限时优先保留文章列表、短简介和编号页码标题映射,压缩已展示的长文细节。
运行前提:需要 python3、pdftotext(通常来自 poppler,首选)和 pymupdf(fallback)。
限制:单份报纸失败不影响整批,失败信息写入 results.json;不处理英文原文对齐、跨页精确拼接,不默认 OCR,也不在本地脚本产出最终日报摘要。其他平台、收费或效果信息暂未提供。