核心用法
hn-extract 是一款专为 HackerNews 设计的轻量级内容提取工具。用户只需提供帖子 ID、完整 URL 或本地 JSON 文件路径,即可一键获取完整的帖子内容。工具内部通过 HackerNews Algolia API 拉取元数据与评论线程,同时利用 trafilatura 库智能抓取并清洗原始文章 HTML,最终输出一份结构清晰的 Markdown 文档,包含文章正文、嵌套评论及关键元信息。
使用方式极为简洁:通过 uv run --script 直接执行,无需预先安装依赖。支持 -o 参数指定输出路径,省略时则输出至标准输出。工具内置 HTTP 重试机制(最多 3 次),并能自动创建输出目录,提升使用便利性。
显著优点
1. 零配置即用:依托 uv 的脚本运行能力,依赖自动隔离安装,无需手动管理虚拟环境。
2. 内容整合度高:将分散的文章原文与 HN 评论线程合并为单一文档,便于离线阅读或向 LLM 提供完整上下文。
3. 输出格式友好:Markdown 格式通用性强,评论按层级缩进,保留讨论结构。
4. 输入灵活:同时支持 ID、URL 和本地缓存文件,适应不同使用场景。
潜在缺点与局限性
- 抓取成功率受限:部分网站启用反爬机制或需要身份验证,可能导致文章提取失败。
- 依赖外部服务:核心功能依赖 HN Algolia API 与目标文章的可访问性,任一环节故障均会影响结果。
- 无增量更新机制:每次执行均为全量抓取,对于长帖或高频使用场景效率一般。
- 格式简化损失:
trafilatura提取过程会丢弃部分富媒体内容与复杂排版。
适合的目标群体
- 需要快速归档 HN 讨论的技术研究者与内容策展人
- 希望将 HN 内容作为知识库素材喂给 LLM 的 AI 应用开发者
- 追求极简工具链、偏好命令行工作流的效率型用户
使用风险
- 网络稳定性:API 与目标站点访问受网络环境影响,重试机制虽存在但仍可能超时。
- 依赖项演进:
trafilatura等库的更新可能引入行为变更,需关注兼容性。 - 合规边界:抓取行为需遵守目标网站的 robots.txt 与服务条款,商业用途需谨慎评估。