千川抖店数据抓取日报助手

Other

自动抓取巨量千川、抖店等经营数据,写入飞书表格,并生成每日经营日报。

Install

openclaw skills install qianchuan-doudian-daily-report

千川抖店数据抓取日报助手

自动抓取巨量千川、抖店等经营后台中的每日经营数据,按字段写入飞书表格,并辅助生成每日经营日报。

这个技能适合店铺运营、投放优化、数据复盘和日报整理场景。它的目标是减少人工复制、漏填、错填和重复统计,而不是绕过平台权限或采集无关网站数据。

核心功能

  • 打开指定的巨量千川数据页面。
  • 复用用户已经授权的登录态读取页面数据。
  • 读取页面中的账户数据、总计数据和关键经营指标。
  • 优先识别页面总计行,例如 共N个账户,避免只抓第一页导致数据缺失。
  • 将采集结果清洗成统一字段,写入用户配置的飞书表格。
  • 可选生成 CSV 和 Markdown 报表,用于本地核对和留档。
  • 支持按日期更新每日数据,适合每日固定时间自动执行。

可采集的数据示例

根据页面实际字段,可采集并整理以下数据:

  • 千川消耗
  • GMV
  • GSV
  • 用户实际支付金额
  • 智能优惠券金额
  • 平台补贴金额
  • 成交订单数
  • 成交金额
  • 净成交金额
  • 退款金额
  • 退款率
  • ROI
  • 店铺日报需要的其他经营指标

使用场景

  • 每天从巨量千川后台抓取投放消耗和成交数据。
  • 从抖店或相关经营后台整理店铺销售数据。
  • 将网页数据自动填入飞书表格,匹配既有字段和日报模板。
  • 基于飞书表格自动生成每日经营日报。
  • 对投放、商城、自播等模块做日常复盘。

安全边界

  • 默认只允许抓取 https://business.oceanengine.com/... 下的页面。
  • 不会读取整个网页正文,只读取配置选择器命中的表格内容。
  • 飞书凭证只能通过环境变量提供,不能写入 config.json
  • 写入飞书会修改目标表格,运行前必须设置 CONFIRM_WRITE_FEISHU=1 作为显式确认。
  • 默认不生成本地 CSV 或 Markdown 文件。确需本地留档时,需在 config.json 中设置 generateReports=true
  • STORAGE_STATE_BASE64 只在内存中解析,不会写入磁盘。
  • 如果要读取本地 storage_state.json,必须在 config.json 中设置 allowLocalStorageState=true

配置要求

运行前需要准备:

  • Node.js 运行环境。
  • Playwright 浏览器依赖。
  • 用户本人已授权的巨量千川登录态。
  • 飞书开放平台应用的 FEISHU_APP_IDFEISHU_APP_SECRET
  • 目标飞书表格的 spreadsheetToken 和对应工作表 ID。

安装依赖

执行以下命令:

npm install
npx playwright install chromium
cp config.example.json config.json

环境变量

Linux 或 macOS:

FEISHU_APP_ID=your_feishu_app_id
FEISHU_APP_SECRET=your_feishu_app_secret
CONFIRM_WRITE_FEISHU=1
STORAGE_STATE_BASE64=base64_encoded_playwright_storage_state

Windows PowerShell:

$env:FEISHU_APP_ID="your_feishu_app_id"
$env:FEISHU_APP_SECRET="your_feishu_app_secret"
$env:CONFIRM_WRITE_FEISHU="1"
$env:STORAGE_STATE_BASE64="base64_encoded_playwright_storage_state"

配置文件

复制 config.example.jsonconfig.json,然后填写:

  • targetUrl:要抓取的数据页面,必须是 https://business.oceanengine.com/...
  • feishu.spreadsheetToken:飞书表格 token。
  • feishu.sourceSheetId:数据源工作表 ID。
  • feishu.summarySheetId:汇总工作表 ID。
  • feishu.reportSheetId:日报工作表 ID。
  • feishu.summarySpendRange:需要写入消耗数据的单元格范围。
  • feishu.reportDateCell:日报日期单元格。
  • generateReports:是否生成本地 CSV 和 Markdown 报表,默认 false
  • allowLocalStorageState:是否允许读取本地 storage_state.json,默认 false

运行方式

node index.js

运行完成后会输出:

  • 抓取到的数据条数。
  • 是否生成本地报表。
  • 飞书表格写入结果。

注意事项

  • 不同后台页面的字段名称可能不同,需要根据目标表格字段做映射。
  • 如果网页改版,需要重新核对选择器和字段。
  • 如果日报模板公式发生变化,需要同步更新配置中的单元格范围。
  • 如果登录态过期,需要由用户重新生成 Playwright storage state。
  • 不要发布或提交 storage_state.jsonconfig.json、生成的报表或任何密钥。