核心功能
tg-channel-reader 是基于MTProto协议的Telegram频道数据抓取工具,支持Pyrogram和Telethon双后端。核心能力包括:
- 频道信息获取:标题、描述、订阅数、链接等元数据
- 帖子抓取:按时间窗口(如24h、7d)获取公开/私密频道内容
- 评论读取:抓取讨论组中的用户评论(单频道模式)
- 未读追踪:智能状态管理,自动识别新内容,适合日报/监控场景
- 批量处理:支持多频道顺序抓取,可配置延迟防封
显著优点
1. 双后端兼容:Pyrogram(默认,现代活跃)与Telethon(备用)自由切换
2. 状态持久化:read_unread模式自动追踪阅读位置,首次运行后无需指定时间窗口
3. 输出优化:--output模式将大文件落地存储,节省token消耗;--text-only过滤纯媒体内容
4. 完善的错误分类:access_denied、flood_wait、AUTH_KEY_UNREGISTERED等均有明确action建议
5. Token经济设计:周期性任务建议结合cron+文件存储,分析时读文件而非重复抓取
潜在局限
- 安全门槛高:需从my.telegram.org获取API凭证,session文件等同账号完全权限
- 评论抓取受限:多频道时不可用
--comments,且图片/视频评论仅提取文字 - session环境敏感:Docker隔离模式下可能触发
AUTH_KEY_UNREGISTERED,建议优先用sessionTarget: "main" - 隐私合规风险:抓取用户评论涉及数据处理的法律边界
适合人群
- 舆情监控与信息聚合需求的研究者、分析师
- 需要追踪特定领域Telegram频道的内容运营者
- 构建自动化日报/摘要工作流的技术用户
常规风险
| 风险类型 | 说明 |
|---------|------|
| 账号安全 | session文件泄露=完整账号控制权,需`chmod 600`严格保护 |
| 频率限制 | Telegram对频繁请求有`flood_wait`,工具自动重试≤60s,更长需人工介入 |
| 服务条款 | 大规模抓取可能触发Telegram反滥用机制 |
| 数据合规 | 评论含用户生成内容,需遵守GDPR等隐私法规 |