自动监控IMAP邮件(如QQ邮箱),提取舆情数据,使用AI判断是否为负面舆情。
- ✅ 自动监控Gmail邮件
- ✅ 提取舆情链接和数据
- ✅ AI智能判断负面舆情
- ✅ 负面舆情通知(企业微信/Telegram)
- ✅ 反馈链接闭环(误报/确认)
- ✅ 控制台实时输出
- ✅ 数据库记录处理历史
- ✅ API 服务与前端仪表盘(可选)
Mail_Check/
├── config/
│ ├── config.yaml # 配置文件
│ ├── hospital_contacts.yaml # 医院负责人@配置
│ └── hospitals.txt # 医院名单(备用)
├── src/
│ ├── email_monitor.py # 邮件监控模块
│ ├── link_extractor.py # 链接提取模块
│ ├── content_fetcher.py # 内容获取模块
│ ├── sentiment_analyzer.py # AI分析模块
│ ├── notifier.py # 通知模块
│ ├── api_server.py # API/反馈服务
│ └── main.py # 主程序
├── web/ # 前端仪表盘
├── logs/ # 日志目录
├── data/ # 数据目录
│ └── (MySQL数据库:运行时配置在config/config.yaml)
├── requirements.txt # Python依赖
└── README.md # 本文件
# 创建虚拟环境(推荐)
python3 -m venv venv
source venv/bin/activate # Mac/Linux
# 或 venv\Scripts\activate # Windows
# 安装依赖
pip install -r requirements.txt
# 安装Playwright浏览器
playwright install chromium服务器部署及 Playwright 依赖/镜像源配置请参考 部署指南.md。
复制配置模板并修改敏感信息:
# 复制配置模板
cp config/config.yaml.example config/config.yaml
# 编辑配置文件
vim config/config.yaml # 或使用其他编辑器需要修改的关键配置:
# 邮箱配置(示例:QQ邮箱)
email:
imap_server: "imap.qq.com" # 或 imap.gmail.com
email_address: "your_email@qq.com"
app_password: "your_app_password" # 应用专用密码
# 通知配置(选择一个)
notification:
provider: "wechat_work" # 或 "telegram"
hospital_contacts_file: "config/hospital_contacts.yaml"
wechat_work:
webhook_url: "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_WEBHOOK_KEY"
telegram:
bot_token: "YOUR_BOT_TOKEN"
chat_id: "YOUR_CHAT_ID"
# AI配置
ai:
api_key: "YOUR_API_KEY" # 智谱AI API密钥
# 反馈链接配置(用于误报反馈)
feedback:
link_base_url: "http://<服务器地址>:<API端口>/feedback"
link_secret: "CHANGE_THIS_TO_RANDOM_SECRET"
# 医院负责人@配置(见 config/hospital_contacts.yaml)# 在项目根目录
python3 src/main.pypython3 src/api_server.py./start_all.sh程序将:
- 每5分钟检查一次新邮件
- 自动处理舆情邮件
- AI判断负面舆情
- 控制台输出结果
发现负面舆情时,控制台会显示:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
⚠️ 发现负面舆情!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
医院: XX市第一人民医院
来源: 抖音
标题: 网红疑患性病病历流传
内容摘要: 医院XX市第一人民医院的病历在网络流传...
AI判断: 医疗隐私泄露,对医院声誉造成负面影响
严重程度: high
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
SELECT * FROM processed_emails;SELECT * FROM negative_sentiments ORDER BY processed_at DESC;日志文件:
logs/sentiment_monitor.log(主程序)logs/api_server.log(API/反馈)
查看日志:
tail -f logs/sentiment_monitor.log- 检查应用专用密码是否正确
- 确保开启了IMAP服务
- 检查网络连接
- 查看日志中的错误信息
- 检查API Key是否有效
- 确认智谱AI账号余额
修改 config.yaml 中的 runtime.check_interval(单位:秒)
runtime:
check_interval: 300 # 5分钟检查一次修改 config.yaml 中的 runtime.log_level
runtime:
log_level: "DEBUG" # DEBUG, INFO, WARNING, ERROR前端在 web/ 目录,生产部署需要:
cd web
npm install
npm run build配合 Nginx 静态站点与 /api、/feedback 反代即可上线。
- Web界面展示
- 舆情趋势分析
如有问题,请查看日志文件或联系开发者。