Skip to content

About

FastMoss data scraper - bypass MSG_SAFE_0001 via bsk + DOM, 16+ public APIs, 30 categories x 20 countries matrix. Italy market analysis toolkit.

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

FastMoss 数据抓取工具集

通过公开 API + bsk (BrowserSkill) 绕开 MSG_SAFE_0001 限制, 抓取 FastMoss TikTok 电商数据, 用于市场调研 / 选品 / 达人筛选。

🎯 核心能力

维度 抓取量 工具
统计类 API (无 captcha) 20 国 × 30 品类 × 6 端点 = 3,600 单元 core/auto_scrape_v2.py
公开 API (无需登录) 21 端点 (商品/达人/直播榜) core/auto_scrape_v2.py
关键词搜索 (bsk 绕 captcha) 无限 (限速 6-8s/页) bsk/search_via_dom.py
商品搜索 无限 (限速 6-8s/页) bsk/goods_search.py
8 榜单 (bsk 绕 MSG_SAFE_0001) 8 榜 × 20 国 × 5 页 = 800 页 bsk/rank_via_dom.py
达人详情 (60+ 字段) 6-8s/达人 bsk/influencer_detail.py
扩展分析 (xlsx 报告) 10-12 sheet 完整报告 analysis/

🏆 突破性发现

MSG_SAFE_0001 搜索/榜单 API 限制已被突破!

  1. 公开统计类 API (overview, saleTrend, saleRange, marketRankList, authorRect, base, ...) 完全裸奔, 16+ 端点无限制
  2. 17 个被拦的搜索/榜单端点 (/api/author/search, /api/ecommerce/rank, ...) 通过 bsk + DOM 抓取 绕过
  3. 原理: FastMoss 是 Next.js 14 RSC, 数据从 fetch 加载到 DOM, 跳过 API 拦截直接读页面 tr/td

📂 项目结构 (实际)

fastmoss-scraper/
├── LICENSE                  # MIT License
├── README.md                # 本文件
├── requirements.txt
├── setup.ps1                # Windows 一键安装脚本
├── .gitignore
│
├── core/                    # 公开 API 抓取 (无需登录)
│   ├── auto_scrape_v2.py    # 21 端点批量 (20 国 × 30 品类)
│   ├── free_endpoints.py    # 5 个 free 端点
│   ├── market_overview.py   # /api/analysis/V2/overview
│   ├── market_rank.py       # /api/analysis/V2/marketRankList
│   ├── market_trend.py      # /api/analysis/V2/saleTrend (30 天)
│   ├── sale_range.py        # /api/analysis/V2/saleRange (渠道拆分)
│   ├── author_rect.py       # /api/analysis/V2/authorRect (粉丝分布)
│   └── public_filters.py    # /api/goods/filterInfo (筛选维度)
│
├── bsk/                     # BrowserSkill 抓取 (需 bsk + Edge 登录)
│   ├── session_helper.py    # bsk session 包装 (路径可配置)
│   ├── search_via_dom.py    # 关键词搜索 (达人)
│   ├── goods_search.py      # 关键词搜索 (商品)
│   ├── rank_via_dom.py      # 8 榜单抓取
│   └── influencer_detail.py # 达人详情 60+ 字段
│
├── analysis/                # 数据分析 + xlsx 报告
│   ├── italy_market.py      # Italy 9 子品类 + 30 大品类 (10 sheet)
│   ├── italy_brands.py      # 头部品牌/账号 (3 sheet)
│   ├── italy_brand_account.py # 品牌 × 账号 (扩展)
│   ├── cross_matrix.py      # 品牌 × 账号 矩阵
│   ├── final_report.py      # 12-sheet 终极报告
│   └── build_xlsx.py        # 通用 xlsx 构建器 (库)
│
├── docs/                    # 文档
│   ├── REPORT_ITALY.md      # Italy 市场深度报告
│   ├── FINDINGS.md          # 16+ 端点验证结果
│   ├── ROUTES.md            # 158+ FastMoss 路由清单
│   ├── ENDPOINTS.md         # 全部已验证 API 端点
│   ├── BYPASS.md            # MSG_SAFE_0001 绕过方案
│   ├── EXTENSIONS.md        # 浏览器扩展配置指南 (bsk + Edge)
│   ├── PROGRESS.md          # 完整时间线
│   └── ext_login_helper/    # 登录助手扩展研究记录
│
└── out/                     # 抓取结果
    ├── italy_sample/        # Italy 数据样例
    ├── zh_search_sample/    # 搜索样例
    └── (各脚本生成的输出目录)

🚀 快速开始

1) 安装依赖 (Windows)

# 一键安装
powershell -ExecutionPolicy Bypass -File setup.ps1

或手动:

# Python 依赖
pip install -r requirements.txt

# bsk CLI (从 GitHub release 下载)
mkdir -p $env:USERPROFILE\.local\bin
Invoke-WebRequest -Uri "https://github.com/Tencent/BrowserSkill/releases/latest/download/bsk_windows_amd64.exe" `
    -OutFile "$env:USERPROFILE\.local\bin\bsk.exe"

2) 安装浏览器扩展 ⚠️ 必需

详见 docs/EXTENSIONS.md:

  • 安装 BrowserSkill Edge 扩展 (extension id: emacgiaaaiojkkpkddmmdfhmokgmnikg)
  • 登录 FastMoss 账号
  • 验证 bsk status → browsers connected: 1

3) 抓公开 API (无需 bsk)

# 单品类
python core/auto_scrape_v2.py --region IT --pcid 16

# 20 国 × 30 品类 全部 (3,600 单元, ~5 分钟)
python core/auto_scrape_v2.py --all

# 单端点
python core/market_overview.py --region IT --pcid 16
python core/market_rank.py --pcid 16 --all-regions
python core/market_trend.py --pcid 16 --all-regions
python core/sale_range.py --pcid 16 --all-regions
python core/author_rect.py --pcid 16 --all-regions
python core/public_filters.py

4) Italy 全市场分析 (10 sheet xlsx)

python analysis/italy_market.py
# 输出: out/italy_reinvestigate/italy_FULL_market_analysis.xlsx

5) 关键词搜索 (bsk 绕 MSG_SAFE_0001)

# 达人搜索: 5 关键词 × 5 页 (10 条/页) = 250 行
python bsk/search_via_dom.py --keywords "phone,beauty,fashion,pet,watch" --pages 5

# 商品搜索
python bsk/goods_search.py --keywords "phone,tablet,headphone" --region US --pages 5

6) 8 榜单抓取

# 5 国 × 8 榜 × 5 页 = 200 页 (~30 分钟)
python bsk/rank_via_dom.py --regions "US,IT,DE,FR,GB" --pages 5

7) 达人详情 (60+ 字段)

python bsk/influencer_detail.py --handles "aris__x,phone_handpick,thebeautystorelive"

8) 终极报告 (12 sheet)

# 先跑 auto_scrape_v2 --all 生成原始数据
python core/auto_scrape_v2.py --all
# 再生成 12-sheet 报告
python analysis/final_report.py
# 输出: out/FINAL_REPORT/fastmoss_终极报告.xlsx

🔧 工具依赖

必需

  • Python 3.10+
  • requests, pandas, openpyxl (在 requirements.txt)

进阶 (bsk)

  • Tencent BrowserSkill 0.2.0+
  • bsk CLI: 详见 docs/EXTENSIONS.md
  • BrowserSkill Edge 扩展 (Edge Add-ons: emacgiaaaiojkkpkddmmdfhmokgmnikg)
  • Edge 已登录 FastMoss 账号 (旗舰版够用)

bsk 路径配置优先级

  1. BskSession(bsk_bin=...) 显式传入
  2. 环境变量 BSK_BIN
  3. PATH 里的 bsk
  4. 常见默认路径 (~/.local/bin/bsk.exe 等)

🔑 已发现的 FastMoss 端点 (16+ 可用, 17 需绕)

详见 docs/ENDPOINTS.md

✅ 公开 API (无任何限制, 16+)

GET /api/analysis/GoodCategory/base?pcid=X&region=Y
GET /api/analysis/GoodCategory/salesChart?action=1&pcid=X&region=Y
GET /api/analysis/GoodCategory/priceDistribution?pcid=X&region=Y
GET /api/analysis/GoodCategory/marketOverview?region=X&pcid=Y
GET /api/analysis/GoodCategory/marketRankList?region=X&pcid=Y
GET /api/analysis/GoodCategory/filterInfo?region=X&pcid=Y
GET /api/analysis/V2/overview?region=X&pcid=Y
GET /api/analysis/V2/saleTrend?region=X&pcid=Y
GET /api/analysis/V2/saleRange?region=X&pcid=Y
GET /api/analysis/V2/priceList?region=X&pcid=Y
GET /api/analysis/V2/marketRankList?region=X&pcid=Y
GET /api/analysis/V2/authorRect?region=X&pcid=Y
GET /api/analysis/V2/categoryDistribution?region=Y&pcid=X
GET /api/live/filterInfo
GET /api/info/pagerInfo?type=X
GET /api/user/user

❌ MSG_SAFE_0001 (17 个, bsk+DOM 可绕)

GET /api/author/search
GET /api/author/potential/rank
GET /api/followers/followersList
GET /api/ecommerce/rank / liveRank / region
GET /api/goods/V2/search / popRank / saleRank / newProduct / sShopHotList
GET /api/video/hotGoodsVideoGroupByProduct
GET /api/live/V2/search / v3/hotProduct / rank

📊 抓取维度

维度 数量 来源
地区 (region) 20 国 goods_filterInfo
一级品类 (pcid) 30 个 goods_filterInfo
子品类 ~270 个 (30×9) categoryDistribution
价段 10 档 priceDistribution
销量/GMV 区间 7-9 档 filterInfo
佣金率 5 档 filterInfo
粉丝层级 6 档 authorRect
关联达人数 5 档 filterInfo
达人订单率 4 档 filterInfo
时间颗粒度 24h/7d/28d/30d(时序)/90d base/salesChart

💡 实战案例: Italy 手机市场

输入: pcid=16 (Phones & Electronics), region=IT

抓取:

  • 1 品类总览: 3,225 件/天 (+20.74% MoM)
  • 9 子品类 7d GMV: Phones & Tablets €480K, Phone Acc €469K, Audio €371K, Smart & Wearable €222K (+13% MoM), ...
  • 27 大品类 7d GMV: Beauty €4.8M, Household €2.9M, Phones €1.78M (Top 3)
  • 30 天时序: 1,851-3,933 件/天, 带货作者 1,482→1,877 (+27%)
  • 10 价段: €0-10 占 46%, >€60 仅 6%
  • 头部品牌: 5 白标 + 3 品牌 (HTC/R36S) 主导
  • 头部账号: TOOBUR EU 单品爆款 €16K 7d, 8 个独立店铺

产出: 10 sheet xlsx + 完整 markdown 报告 (见 docs/REPORT_ITALY.md)

🛡️ 注意事项

  1. 不绕过 MSG_SAFE_0001 用于商业 —— 仅用于研究
  2. bsk 会话 单次建议 ≤ 200 页, 避免 captcha 触发
  3. 数据时效 全部为 fastmoss 昨日数据 (data_date = T-1)
  4. 登录账号需付费 —— 旗舰版够用, 部分高级功能 (粉丝画像/联系方式) 需企业版

📜 许可证

MIT License - 详见 LICENSE

🙏 致谢


最后更新: 2026-09-08 | 抓取覆盖: 30 品类 × 20 国家 × 11 维度 | 数据点: 60,000+

About

FastMoss data scraper - bypass MSG_SAFE_0001 via bsk + DOM, 16+ public APIs, 30 categories x 20 countries matrix. Italy market analysis toolkit.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages