流量主播报助手,收益再也不用一个个点开查看了
正文共: 3344字 7图
预计阅读时间: 9分钟

-
无需来回切换,一个站点查看所有账户(公众号和小程序)的收益情况 -
定时推送收益数据(日报、周报、月报)到指定邮箱 -
支持自定义时间周期查看账户收益数据 -
可视化看板,数据、趋势一目了然






我是数字游民9527,一个沉迷于AI世界的普通人。
我在努力践行「把自己产品化」的理念,通过「Build in public & Learn in Public」的方式尝试建立个人品牌。
我希望通过直接下场行动的方式,验证普通人如何通过AI实现商业化实践,追求个体的财富与幸福。
我的互联网简历:🔍数字游民9527
期待与更多同频伙伴一同前行。
微信流量主合并播报助手 (WeChat Ads Publisher Dashboard)
📖 项目简介
“微信流量主合并播报助手”是一款专为拥有多个微信小程序和公众号的开发者/运营者打造的聚合数据看板和自动化报表工具。
它旨在解决多账号运营中数据查看繁琐、收益统计耗时的问题,通过统一的 Web 界面和自动化的邮件播报功能,极大提升数据分析和监控的效率。
✨ 核心功能
-
1. 多账号聚合管理: -
• 支持同时绑定多个微信小程序和公众号。 -
• 自动隐藏 AppSecret,提供高安全性的本地数据存储。 -
2. 可视化数据看板: -
• 支持查看昨日、过去7天、过去30天、历史总收入及自定义日期区间的数据。 -
• 包含收益趋势折线图(支持按“仅小程序”、“仅公众号”或“全部”筛选)。 -
• 详细数据卡片化展示:预估收入、曝光量、点击量、点击率、eCPM 核心指标一目了然。 -
• 核心指标自动计算“同比上期”增长率。 -
3. 自动化定时播报: -
• 支持配置灵活的日报、周报、月报自动发送时间。 -
• 邮件采用响应式 HTML 设计(Bauhaus 风格),支持移动端和 PC 端完美阅读。 -
4. 隐私与安全: -
• 提供管理员账号体系,限制未授权访问。 -
• 提供“小眼睛”隐私开关,可一键隐藏所有账号名称,方便随时截图分享数据。 -
5. 极简 UI 与夜间模式: -
• 采用具有艺术感的 Bauhaus 风格,结合流畅的 CSS 动画。 -
• 前端采用 AJAX 异步加载,并带有骨架屏提示,告别页面白屏等待。 -
• 完美支持系统的深色/浅色模式自动切换。
🛠️ 技术栈
-
• 后端:Python 3.8+, Flask, Flask-SQLAlchemy, Flask-Login -
• 异步处理: concurrent.futures.ThreadPoolExecutor(多线程 API 加速),threading -
• 定时任务: APScheduler(后台定时执行调度) -
• 数据存储:SQLite (轻量级本地数据库) -
• 前端:HTML5, TailwindCSS, Chart.js, FontAwesome, 原生 Fetch API
🚀 部署要求
-
• 推荐使用 宝塔面板 (BT Panel) 进行一键式 Python 项目部署。 -
• 服务器需要能够正常访问外网,并且配置 Asia/Shanghai时区。 -
• 重要提醒:公众号必须在微信公众平台后台将服务器 IP 加入“IP白名单”才能拉取数据。
� 核心 API 接口说明
本项目依赖微信官方提供的接口获取 Access Token 及流量主数据。
1. 获取 Access Token
-
• 接口地址: GET https://api.weixin.qq.com/cgi-bin/token -
• 用途:换取调用业务接口所需的全局唯一接口调用凭据。 -
• 参数: -
• grant_type: 固定填client_credential -
• appid: 小程序或公众号的 AppID -
• secret: 小程序或公众号的 AppSecret -
• 返回示例: { "access_token": "ACCESS_TOKEN", "expires_in": 7200 }
2. 获取流量主数据 (Publisher Adpos General)
-
• 接口地址: GET https://api.weixin.qq.com/publisher/stat?action=publisher_adpos_general -
• 用途:获取指定日期范围内的流量主广告收益明细。 -
• 参数: -
• access_token: 接口调用凭证 -
• page: 分页页码,从 1 开始 -
• page_size: 每页数量,建议填 100 -
• start_date: 开始日期,格式如2023-01-01 -
• end_date: 结束日期,格式如2023-01-07 -
• ad_slot: (可选) 广告位ID,不传则拉取该账号所有广告位的汇总数据。 -
• 代码调用示例 (Python): import requests url = "https://api.weixin.qq.com/publisher/stat" params = { "action": "publisher_adpos_general", "access_token": "YOUR_ACCESS_TOKEN", "page": 1, "page_size": 100, "start_date": "2023-10-01", "end_date": "2023-10-07" } response = requests.get(url, params=params) data = response.json() -
• 降级回退接口:
由于微信针对不同账号(部分历史公众号)可能未开通新版接口,如果上述接口返回失败,本项目会自动降级请求旧版接口:action=publisher_biz_adpos_general,参数完全相同。
�📂 核心文件结构
-
• app.py: 应用入口,包含路由逻辑、API 接口和数据计算逻辑。 -
• models.py: 数据库 ORM 模型定义(管理员、账号、数据缓存、系统设置)。 -
• wechat.py: 封装的微信官方 API 请求模块(包含多重回退和重试机制)。 -
• tasks.py: 定时任务核心,多线程拉取数据并发送邮件。 -
• mailer.py: 负责生成并发送精美的 Bauhaus 风格 HTML 邮件。 -
• templates/: 前端 HTML 模板文件目录。
浙公网安备 33010602011771号