项目由采集、解析、清洗、入库、报表五个模块组成。采集模块基于 asyncio 与aiohttp 实现异步并发抓取,支持全局与单域名双层限流,命中 429 时自动降低并发并冷却恢复;解析模块通过可配置的 XPath 选择器抽取字段,解析失败时抛出异常并进入待复查队列,保留原文片段;存储模块使用 SQLite 建立抓取台账、记录表与任务表,支持内容指纹去重与断点续跑;清洗模块用 pandas 统一日期格式、压缩空白、剔除标题重复并统计字段缺失;报表模块生成单文件 HTML,内嵌 ECharts 渲染来源分布、日期趋势、分类占比与地区分布四类图表,同时输出数据明细表与待复查清单。命令行提供 run、stats、export 三个子命令,全流程可离线运行,附带 85 项单元测试。
点击空白处退出提示









评论