南京大学教育资讯聚合与抓取平台,支持:
- 学院官网资讯抓取
- 微信公众号会话刷新与采集
- 统一 API 查询与存储
nju_crawler/
├─ main.py
├─ requirements.txt
├─ config/
│ └─ sources/
├─ crawler/
├─ wechat/
├─ storage/
├─ scripts/
│ ├─ refresh_wechat_session.py
│ └─ refresh_wechat_session_gui.py
└─ dist/
└─ refresh_wechat_session_gui.exe
- 创建虚拟环境
python -m venv venvWindows:
.\venv\Scripts\activate- 安装依赖
pip install -r requirements.txt- 启动服务
python main.pyAPI 文档:
http://127.0.0.1:8000/docshttp://127.0.0.1:8000/redoc
本仓库提供 GUI 可执行文件:
dist/refresh_wechat_session_gui.exe
对应 Release 下载:
- 双击运行
refresh_wechat_session_gui.exe - 点击“开始扫码并更新 Session”
- 在弹出的浏览器页面直接扫码登录(无需再保存二维码图片)
- 程序拿到 session 后会自动关闭浏览器,并上传到配置的接口
session.json默认保存到:<exe 同目录>/cfg/session.json- 运行错误日志:
<exe 同目录>/refresh_wechat_session_error.log
WECHAT_SESSION_DIR:会话目录(默认<exe目录>/cfg)WECHAT_SESSION_FILE:会话文件完整路径(优先级高于WECHAT_SESSION_DIR)
WECHAT_SESSION_SYNC_URLS:上传地址列表,逗号分隔WECHAT_SESSION_SYNC_AUTH_TOKEN:Bearer TokenWECHAT_SESSION_SYNC_HEADERS:额外请求头 JSONWECHAT_SESSION_UPLOAD_MODE:json或fileWECHAT_SESSION_FILE_FIELD:file模式表单字段名WECHAT_SESSION_SYNC_TIMEOUT:上传超时秒数
WECHAT_LOGIN_BROWSERS:默认edge,firefox
示例:
WECHAT_LOGIN_BROWSERS=edge,firefox
WECHAT_SESSION_SYNC_URLS=https://example.com/api/session,https://example2.com/api/session
WECHAT_SESSION_UPLOAD_MODE=json
WECHAT_SESSION_SYNC_TIMEOUT=60- 先关闭已运行的旧版 exe 进程再重试
- 查看错误日志:
refresh_wechat_session_error.log
- 检查网络是否可访问
https://mp.weixin.qq.com/ - 检查目标上传接口是否可达、鉴权是否正确
- 默认优先 Edge,失败回退 Firefox
- 可通过
WECHAT_LOGIN_BROWSERS调整顺序
- 请勿提交敏感信息(token、cookie、私钥)
- 新增依赖请同步
requirements.txt - 建议通过 PR 合并变更并保留变更说明