3.7 KiB
3.7 KiB
main.py 使用指南
概述
main.py 是当前项目的主入口,负责把多个数据源的抓取、向量入库和报告生成串成统一流程。
支持数据源:
traffic:赛文交通网wechat:微信公众号(高德地图)baidu:微信公众号(百度地图)ccgp:中国政府采购网all:全部数据源
支持模式:
crawlreporttopicfull
常用命令
完整流程
python main.py --mode full --sources all
仅抓取并写入向量库
python main.py --mode crawl --sources all
仅生成综合报告
python main.py --mode report
生成主题报告
python main.py --mode topic --topic "信控"
参数说明
通用参数
| 参数 | 含义 | 默认值 |
|---|---|---|
--mode |
运行模式 | full |
--sources |
数据源选择 | all |
--topic |
主题分析关键词,仅 topic 模式使用 |
空 |
赛文交通网参数
| 参数 | 含义 | 默认值 |
|---|---|---|
--max-news |
最大抓取条数 | 20 |
高德公众号参数
| 参数 | 含义 | 默认值 |
|---|---|---|
--wechat-count |
最大抓取篇数 | 30 |
--wechat-keyword |
关键词过滤 | 交通 |
百度地图公众号参数
| 参数 | 含义 | 默认值 |
|---|---|---|
--baidu-count |
最大抓取篇数 | 30 |
--baidu-keyword |
关键词过滤 | 交通 |
政府采购网参数
| 参数 | 含义 | 默认值 |
|---|---|---|
--ccgp-keywords |
关键词列表,逗号分隔 | 信控,绿波 |
--ccgp-count |
每个关键词最大抓取条数 | 30 |
典型用法
只抓赛文交通网
python main.py --mode crawl --sources traffic --max-news 50
只抓高德和百度公众号
python main.py --mode crawl --sources wechat,baidu --wechat-count 20 --baidu-count 20
只抓政府采购网
python main.py --mode crawl --sources ccgp --ccgp-keywords "信控,绿波,交通管理" --ccgp-count 20
分步执行
python main.py --mode crawl --sources all
python main.py --mode report
python main.py --mode topic --topic "绿波"
实际执行逻辑
crawl
- 按所选数据源抓取原始数据
- 原始数据保存到
data/*.json - 统一转换为 RAG 输入格式
- 写入
vector_db/
report
- 从
vector_db/按std_timestamp读取最近 15 天新闻元数据 - 综合报告会按来源均衡取样,尽量确保每个来源至少纳入 5 条新闻(若该来源在时间窗口内不足 5 条,则取其全部)
- 调用千问模型生成综合报告
- 保存为
data/report_summary_*.txt
topic
- 从向量库检索主题相关片段
- 生成专题报告
- 保存为
data/report_topic_*.txt
full
- 抓取所选数据源
- 写入向量库
- 基于新数据生成最近 15 天综合报告
配置要求
必需
QWEN_API_KEY=你的API密钥
QWEN_MODEL=qwen-max
DATA_DIR=./data
VECTOR_DB_DIR=./vector_db
可选
TARGET_URL=https://www.7its.com/
WECHAT_APPID=...
WECHAT_APPSECRET=...
BAIDU_MAP_APPID=...
BAIDU_MAP_APPSECRET=...
说明:
- 当前公众号后台模式依赖
WECHAT_MP_COOKIE - 如果未配置
WECHAT_MP_COOKIE,高德和百度两个公众号源都会被跳过
输出文件
原始抓取数据
news_*.jsonwechat_articles_*.jsonbaidu_map_articles_*.jsonccgp_results_*.jsonccgp_probe_*.json
报告文件
report_summary_*.txtreport_topic_*.txt
已更新的行为说明
以下旧说法不再准确:
- 报表输出为
.md - 政府采购网只依赖搜索接口稳定返回
- 公众号数据源未配置时仍会继续请求接口