核心用法
Firehose API 是一个实时网络监控与内容推送服务,采用 Server-Sent Events (SSE) 流式架构。用户通过 Management Key (fhm_前缀) 管理数据流通道(Tap),通过 Tap Token (fh_前缀) 配置监控规则与接收数据。
关键工作流程:
1. 创建 Tap → 获取独立的数据流通道和 Token
2. 配置 Rules → 使用 Lucene 语法编写匹配规则(最多25条/组织)
3. 建立 Stream → SSE 长连接实时接收匹配的网页内容
Lucene 查询能力:
- 全文检索:
title:tesla、"quick brown fox" - 字段过滤:
url:、domain:、language:、page_category:、page_type:、publish_time: - URL 模式:通配符
url:*\/category\/*、正则url:/.*\/page\/[0-9]+.*/ - 时间窗口:
recent:24h、recent:7d - 布尔组合:
AND/OR/NOT多字段交叉过滤
数据返回: 匹配文档包含 URL、标题、发布时间、内容 diff(增删标记)、Markdown 全文、ML 分类标签(110+页面类型/700+分类)及语言代码。
显著优点
| 特性 | 说明 |
|------|------|
| 实时性 | SSE 流式推送,秒级延迟 |
| 精准度 | Lucene 专业检索语法 + ML 内容分类双重过滤 |
| 内容完整性 | 返回 Markdown 全文与内容 diff,便于追踪变更 |
| 架构清晰 | Management/Tap 双层权限分离,便于团队协作 |
| 过滤丰富 | 内置质量过滤器(排除分页/标签页/参数URL)、NSFW 控制 |
潜在局限
- 规则数量硬限制:每组织最多25条规则,复杂监控需合并查询
- Lucene 学习成本:正则/通配符需手动转义(
\/、\\:),JSON 双层转义易出错 - 连接管理:单 Tap 限5连接/分钟,超时需客户端重连
- 语言覆盖有限:仅支持52种 ISO 639-1 语言代码
- 无历史数据:仅推送实时匹配内容,不提供回溯查询
适合人群
- 品牌公关团队:实时监控品牌提及与舆情
- 竞品分析师:追踪竞争对手产品更新与市场动态
- SEO/内容运营:发现行业热点内容与外链机会
- 金融/投资研究:监控特定公司、行业新闻与监管动态
- 开发者:构建实时信息流、自动化内容聚合系统
常规风险
| 风险点 | 说明 |
|--------|------|
| Token 泄露 | Management Key 仅创建时显示,泄露将导致 Tap 被恶意操作 |
| 数据过载 | 宽松规则(如单关键词)可能产生高流量,需配合 `recent:` 与质量过滤 |
| 转义错误 | JSON 中 `\/` 实际表示 `/`,需双层转义才能得到 Lucene 的 `\/` |
| 连接稳定性 | SSE 受网络波动影响,生产环境需实现指数退避重连 |
| 合规边界 | 可抓取公开网页内容,但需遵守目标站点的 robots.txt 与使用条款 |