前言
Instagram、TikTok是出海品牌网红营销的核心阵地,但国内主流数据分析工具仅覆盖本土平台,海外订阅工具定价高、数据滞后且无法自定义筛选,不少品牌因网红数据注水遭遇投放翻车。
本文基于Bright Data Web Scraper API,结合Python搭建全流程海外KOL数据采集、清洗、评分体系,从痛点梳理、架构设计、环境配置到代码实战、成本对比完整落地,附带可直接运行的案例代码与数据样本,帮助出海团队低成本获取真实实时的海外网红数据,搭建专属营销情报链路。
一、行业痛点:海外网红投放,数据工具成为最大短板
不少出海品牌都遇到过类似问题:花费高额预算签约Instagram、TikTok网红带货,前期参考第三方或商用工具数据,认定博主粉丝量大、互动表现优秀,最终转化效果却远低于预期。复盘后发现,网红粉丝、点赞、评论等核心数据存在刷量造假,粉丝地域、活跃度与品牌目标客群完全不匹配,而团队前期没有可靠渠道核验数据真实性。
当下海内外主流KOL工具,在出海场景中均存在明显短板,下表为各类工具综合对比:
| 飞瓜数据 | 999-3999元/月 | 抖音、快手、B站、小红书 | 当日更新 | 无Instagram、TikTok海外版数据,无法用于出海 |
| 新榜 | 1500-5000元/月 | 微信、微博、抖音 | 当日更新 | 聚焦国内生态,海外社媒数据空白 |
| 卡思数据 | 2000元起/月 | 抖音、快手、B站 | 当日更新 | 仅支持国内平台,不覆盖海外主流社媒 |
| 蝉妈妈 | 299-1999元/月 | 抖音、国内TikTok | 当日更新 | 海外TikTok数据不全,字段固定不可自定义 |
| HypeAuditor | 99-399美元/月 | Instagram、TikTok、YouTube | 月度更新 | 收费高、更新慢,筛选维度固定,无中文界面 |
| 自建方案(Bright Data) | 按用量计费 | 全海外社媒,支持自定义 | 实时更新 | 需前期简单配置,无固定月租 |
国内数据工具仅适配本土短视频平台,无法抓取 Instagram、TikTok 海外博主数据;海外付费工具虽覆盖平台广,但订阅费用高、数据更新滞后、筛选维度固定,难以实现精细化 KOL 筛选。
而基于 Bright Data API 自建采集方案,能完美解决以上痛点。依托其合规代理网络、成熟防爬体系与标准化社媒爬虫接口,出海团队可实时、稳定、低成本批量采集海外网红真实公开数据,是海外 KOL 营销数据获取的最优方案。
二、整体技术架构设计
整套系统采用模块化分层设计,链路清晰、便于维护和功能拓展,整体流程:
Bright Data Instagram/TikTok Scraper API → 原始数据接收 → 数据清洗标准化 → KOL加权评分模型 → 报表导出/数据存储
1、各模块作用
数据采集层:调用Bright Data官方API,批量获取网红基础信息、粉丝、流量、互动、涨粉等原始数据,依托 Bright Data 的代理基础设施、IP 轮换和自动化解锁能力,提高公开网页数据采集稳定性。
数据清洗层:处理API返回的JSON原始数据,完成去重、空值过滤、字段标准化、异常值剔除,输出规整的结构化数据。
评分模型层:结合出海营销需求搭建加权评分体系,量化KOL综合价值,自动识别刷量账号、完成排名筛选。
报告输出层:将最终数据导出为CSV、Excel格式,支持本地存储与团队协同使用。
2、核心采集字段
结合网红带货、品牌种草的评估需求,预设两类平台核心采集字段,均可在API中自由配置:
-
Instagram:博主昵称、主页信息、粉丝总量、粉丝地域、平均点赞/评论、互动率、作品发布频率
-
TikTok:创作者ID、总粉丝数、视频平均播放量、日均涨粉、点赞率、直播观看人数、内容垂类
三、前置准备工作(环境、账号、配置)
在正式编写代码采集数据前,需要完成账号注册、Python环境部署、接口密钥配置三大前置工作,全流程无复杂运维操作,普通技术运营、初级开发均可完成。
1、Bright Data 账号注册与权限开通
1、注册 Bright Data 官网 另外在设置-用户管理界面还有促销代码折扣码是"mao20",可以免费获取20$

2、进入控制台,查看 Instagram Scraper API 与 TikTok Scraper API

3、 获取 API Token
文中API Key 均使用占位符 YOUR_BRIGHTDATA_API_KEY

2、Python 环境部署
本次代码基于Python 3.8及以上版本开发,依赖requests(接口请求)、pandas(数据处理)、python-dotenv(环境变量管理)三大主流库,部署步骤如下:
本地安装Python 3.8+,配置系统环境变量,打开终端验证版本:python –version。
使用pip安装依赖库,执行以下命令:
pip install requests pandas python-dotenv
四、三步完成数据采集、建模、筛选(核心代码+案例)
本章节为全文核心实战部分,分为Instagram数据采集、TikTok数据采集、KOL评分模型与智能筛选三大步骤,每一段代码均附带详细注释、功能说明、运行效果,同时附上脱敏后的真实数据输出案例。所有代码均可直接部署运行,适配2026年最新版Bright Data API规则。
注:代码中dataset_id,根据 Bright Data 控制台中的对应 Scraper API / Dataset ID 配置,Authorization需要从设置中心获取。
1、Python 批量采集 Instagram 网红数据
脚本文件:instagram_profile_scraper.py,核心功能:批量读取网红主页链接,调用Bright Data API采集博主基础信息、粉丝、互动、内容数据,完成基础清洗后输出CSV文件。
(1)完整代码
import requests
import json
import csv
headers = {
"Authorization": "Bearer YOUR_BRIGHTDATA_API_KEY ",
"Content-Type": "application/json",
}
data = json.dumps({
"input": [
{"url":"https://www.instagram.com/cats_of_world_/"},
{"url":"https://www.instagram.com/dogsofinstagram/"},
{"url":"https://www.instagram.com/zoobarcelona"},
{"url":"https://www.instagram.com/australiazoo"}
],
})
response = requests.post(
"https://api.brightdata.com/datasets/v3/scrape?dataset_id=YOUR_DATASET_ID¬ify=false&include_errors=true",
headers=headers,
data=data
)
print(f"Status Code: {response.status_code}")
if response.status_code == 200:
# 1. 解析 NDJSON 格式数据
parsed_data = []
for line in response.text.strip().split('\\n'):
if not line:
continue
try:
parsed_data.append(json.loads(line))
except json.JSONDecodeError:
print(f"JSON 解析错误,跳过该行: {line[:50]}…")
# 2. 基础清洗与提取字段
cleaned_data = []
for item in parsed_data:
# 处理可能存在的空值,并清理简介中的换行符以防止 CSV 格式错误
biography = str(item.get("biography", item.get("about", ""))).replace('\\n', ' ').replace('\\r', '')
row = {
"账号ID": item.get("username", item.get("account_id", "")), # 账号ID/用户名
"昵称": item.get("full_name", item.get("name", "")), # 昵称/全名
"简介": biography, # 简介
"粉丝数": item.get("followers", item.get("followers_count", 0)), # 粉丝数
"关注数": item.get("following", item.get("following_count", 0)), # 关注数
"帖子数": item.get("posts_count", item.get("videos_count", 0)), # 帖子数
"是否认证": item.get("is_verified", False), # 是否认证
"平均互动率": item.get("engagement_rate", item.get("awg_engagement_rate", "")), # 平均互动率
"主页链接": item.get("url", "") # 主页链接
}
cleaned_data.append(row)
# 3. 导出到 CSV 文件
csv_filename = "instagram_profiles.csv"
if cleaned_data:
fieldnames = list(cleaned_data[0].keys())
try:
# utf-8-sig 编码保证在 Excel 中打开不会中文乱码
with open(csv_filename, mode='w', encoding='utf-8-sig', newline='') as f:
writer = csv.DictWriter(f, fieldnames=fieldnames)
writer.writeheader()
writer.writerows(cleaned_data)
print(f"成功导出 {len(cleaned_data)} 条数据到 {csv_filename}")
except IOError as e:
print(f"写入 CSV 失败: {e}")
else:
print("未提取到有效数据")
else:
print("请求失败,响应内容:", response.text[:1000])
(2)运行说明与脱敏数据样本
1、 确认采集的instagram账号主页。
2、 终端执行命令:python instagram_profile_scraper.py,脚本自动批量采集并输出instagram_raw_data.csv
3、 脱敏数据输出样本:

从样本可直观看到,脚本成功提取核心运营指标,互动率、粉丝等字段可直接用于KOL初步筛选。
2、Python 批量采集 TikTok 海外创作者数据
脚本文件:tiktok_creator_scraper.py,逻辑与Instagram采集脚本一致,重点采集播放量、涨粉速度、直播数据等TikTok核心指标。
(1)完整代码
import requests
import json
import csv
headers = {
"Authorization": "Bearer YOUR_BRIGHTDATA_API_KEY ",
"Content-Type": "application/json",
}
data = json.dumps({
"input": [
{"url":"https://www.tiktok.com/@fofimdmell","country":""},
{"url":"https://www.tiktok.com/@s_o_h_e_l_46","country":""}
],
})
response = requests.post(
"https://api.brightdata.com/datasets/v3/scrape?dataset_id=YOUR_DATASET_ID¬ify=false&include_errors=true",
headers=headers,
data=data
)
print(f"Status Code: {response.status_code}")
if response.status_code == 200:
# 1. 解析 NDJSON 格式数据
parsed_data = []
for line in response.text.strip().split('\\n'):
if not line:
continue
try:
parsed_data.append(json.loads(line))
except json.JSONDecodeError:
print(f"JSON 解析错误,跳过该行: {line[:50]}…")
# 2. 基础清洗与提取字段
cleaned_data = []
for item in parsed_data:
# 处理可能存在的空值,并清理简介中的换行符以防止 CSV 格式错误
biography = str(item.get("biography", "")).replace('\\n', ' ').replace('\\r', '')
# 提取并计算额外的数据指标
top_videos = item.get("top_videos", [])
total_plays = sum(v.get("playcount", 0) for v in top_videos)
avg_plays = total_plays / len(top_videos) if top_videos else 0
row = {
"账号ID": item.get("account_id", ""), # 账号ID/用户名
"昵称": item.get("nickname", ""), # 昵称
"简介": biography, # 简介
"粉丝数": item.get("followers", 0), # 粉丝数
"关注数": item.get("following", 0), # 关注数
"总点赞数": item.get("likes", item.get("like_count", 0)), # 总点赞数
"视频数": item.get("videos_count", 0), # 视频/内容数
"是否认证": item.get("is_verified", False), # 是否认证
"平均互动率": item.get("awg_engagement_rate", ""), # 平均互动率
"近期总播放量": total_plays, # top_videos 的播放量之和
"近期平均播放": round(avg_plays, 2), # top_videos 的平均播放量
"直播数据": "暂无/未开播", # 接口当前未直接提供直播数据字段
"涨粉速度": "需历史数据对比", # 接口为实时快照,无法直接计算涨粉速度
"主页链接": item.get("url", "") # 主页链接
}
cleaned_data.append(row)
# 3. 导出到 CSV 文件
csv_filename = "tiktok_profiles.csv"
if cleaned_data:
fieldnames = list(cleaned_data[0].keys())
try:
# utf-8-sig 编码保证在 Excel 中打开不会中文乱码
with open(csv_filename, mode='w', encoding='utf-8-sig', newline='') as f:
writer = csv.DictWriter(f, fieldnames=fieldnames)
writer.writeheader()
writer.writerows(cleaned_data)
print(f"成功导出 {len(cleaned_data)} 条数据到 {csv_filename}")
except IOError as e:
print(f"写入 CSV 失败: {e}")
else:
print("未提取到有效数据")
else:
print("请求失败,响应内容:", response.text[:1000])
(2)运行说明与脱敏数据样本
执行命令:python tiktok_creator_scraper.py,输出tiktok_raw_data.csv。
脱敏数据输出样本:

3、搭建自定义KOL评分模型,实现智能筛选与排名
采集到原始数据后,最核心的业务环节是量化评估KOL价值,区分优质账号、普通账号、刷量低质账号。我们参考社媒营销行业通用评估体系,结合加权算法搭建KOL评分模型,脚本文件:kol_scoring_model.py。
(1)评分模型设计思路
结合Instagram、TikTok平台特性与出海带货场景,拆分5大核心评分维度,设置可自定义权重(品牌可根据赛道调整权重),总分100分:
1、互动率评分(权重 40%):评估“活粉/死粉”的最核心指标。> 10% 给 40 分;> 5% 给 30 分;< 1% 直接 0 分(高度涉嫌刷量)。
2、粉丝量级评分(权重 30%):评估曝光基础。百万级给 30 分;十万级给 20 分;万粉以上给 10 分。
3、近期均播能力(权重 20%):考核实际爆款潜力与近期流量获取能力。均播 > 10w 给 20 分;> 1w 给 15 分。
4、账号活跃与权威性(权重 10%):如果是官方认证 (is_verified) 直接给 10 分,内容数量多于 50 条给 5 分。
账号评级定性,根据算法自动生成综合评分并得出账号评级:
S 级(优质账号):评分>=80
A 级(良好账号):评分 >=60
B 级(普通账号):评分 >=40
C 级(低质/涉嫌刷量):评分 < 40
(2)评分模型完整代码
import requests
import json
import csv
headers = {
"Authorization": "Bearer YOUR_BRIGHTDATA_API_KEY ",
"Content-Type": "application/json",
}
data = json.dumps({
"input": [
{"url":"https://www.tiktok.com/@fofimdmell","country":""},
{"url":"https://www.tiktok.com/@s_o_h_e_l_46","country":""}
],
})
response = requests.post(
"https://api.brightdata.com/datasets/v3/scrape?dataset_id=YOUR_DATASET_ID¬ify=false&include_errors=true",
headers=headers,
data=data
)
print(f"Status Code: {response.status_code}")
if response.status_code == 200:
# 1. 解析 NDJSON 格式数据
parsed_data = []
for line in response.text.strip().split('\\n'):
if not line:
continue
try:
parsed_data.append(json.loads(line))
except json.JSONDecodeError:
print(f"JSON 解析错误,跳过该行: {line[:50]}…")
# 2. 基础清洗、提取字段与 KOL 评分模型
cleaned_data = []
for item in parsed_data:
# 处理可能存在的空值,并清理简介中的换行符以防止 CSV 格式错误
biography = str(item.get("biography", "")).replace('\\n', ' ').replace('\\r', '')
# 获取基础数据
followers = item.get("followers", 0)
likes = item.get("likes", item.get("like_count", 0))
videos_count = item.get("videos_count", 0)
engagement_rate = item.get("awg_engagement_rate", 0)
if not isinstance(engagement_rate, (int, float)):
engagement_rate = 0
top_videos = item.get("top_videos", [])
total_plays = sum(v.get("playcount", 0) for v in top_videos)
avg_plays = total_plays / len(top_videos) if top_videos else 0
# ==========================================
# KOL 核心评分算法模型 (满分 100分)
# ==========================================
score = 0
# 1. 粉丝量级评分 (权重 30%)
# >100w: 30分 | >10w: 20分 | >1w: 10分 | 其它: 5分
if followers > 1000000:
score += 30
elif followers > 100000:
score += 20
elif followers > 10000:
score += 10
elif followers > 0:
score += 5
# 2. 互动率评分 (权重 40%) – 最核心指标,判断死粉/活粉
# >10%: 40分 | >5%: 30分 | >2%: 15分 | <1%: 0分 (涉嫌刷量)
if engagement_rate > 0.10:
score += 40
elif engagement_rate > 0.05:
score += 30
elif engagement_rate > 0.02:
score += 15
elif engagement_rate < 0.01:
score += 0 # 可能存在大量死粉或刷量
else:
score += 5
# 3. 爆款视频能力 (权重 20%) – 考核均播数据
# 均播 > 10w: 20分 | > 1w: 15分 | > 1000: 5分 | 其它: 0分
if avg_plays > 100000:
score += 20
elif avg_plays > 10000:
score += 15
elif avg_plays > 1000:
score += 5
# 4. 账号活跃度及认证加分 (权重 10%)
# 官方认证给满 10分,无认证但视频数>50给 5分
if item.get("is_verified", False):
score += 10
elif videos_count > 50:
score += 5
# ==========================================
# 账号评级定性
# ==========================================
if score >= 80:
kol_level = "优质账号 (S级)"
elif score >= 60:
kol_level = "良好账号 (A级)"
elif score >= 40:
kol_level = "普通账号 (B级)"
else:
kol_level = "低质/涉嫌刷量账号 (C级)"
row = {
"账号ID": item.get("account_id", ""), # 账号ID/用户名
"昵称": item.get("nickname", ""), # 昵称
"简介": biography, # 简介
"粉丝数": followers, # 粉丝数
"总点赞数": likes, # 总点赞数
"视频数": videos_count, # 视频/内容数
"是否认证": item.get("is_verified", False), # 是否认证
"平均互动率": round(engagement_rate, 4), # 平均互动率
"近期平均播放": round(avg_plays, 2), # top_videos 的平均播放量
"综合评分 (满分100)": score, # KOL商业价值评分
"账号评级": kol_level, # 账号等级评定
"主页链接": item.get("url", "") # 主页链接
}
cleaned_data.append(row)
# 3. 导出到 CSV 文件
csv_filename = "kol_scoring_model.csv"
if cleaned_data:
fieldnames = list(cleaned_data[0].keys())
try:
# utf-8-sig 编码保证在 Excel 中打开不会中文乱码
with open(csv_filename, mode='w', encoding='utf-8-sig', newline='') as f:
writer = csv.DictWriter(f, fieldnames=fieldnames)
writer.writeheader()
writer.writerows(cleaned_data)
print(f"成功导出 {len(cleaned_data)} 条数据到 {csv_filename}")
except IOError as e:
print(f"写入 CSV 失败: {e}")
else:
print("未提取到有效数据")
else:
print("请求失败,响应内容:", response.text[:1000])
(3)评分排名输出样本

这两位网红的互动率均低于 1%(0.007 和 0.0087),因此在互动率方面获得了 0 分;再结合各自的粉丝数、平均播放量、活跃度指标,综合得分分别为 5 分和 10 分,因此被系统准确标记为了 “低质/涉嫌刷量账号 (C级)”。
六、成本分析:自建方案 vs 传统订阅工具
我们以每月采集10000条海外KOL数据为标准,对比自建Bright Data方案与主流海外订阅工具的综合成本,量化体现成本优势:
1、成本对比表
| HypeAuditor(基础版) | 99美元(约710元) | 无额外费用 | 约710元 | 月度更新 | 字段固定,无法自定义 |
| HypeAuditor(高级版) | 399美元(约2850元) | 无额外费用 | 约2850元 | 月度更新 | 有限筛选,无字段定制 |
| 自建(Bright Data) | 0固定月费 | 10000条≈400-600元 | 400-600元 | 实时更新 | 全字段自定义,模型可调整 |
2、成本总结
中小团队(月采集1万条以内):自建方案综合成本低于HypeAuditor基础版,且无固定月租,闲置时段零成本,性价比优势明显;
中大型团队(月采集5万+条):Bright Data量大优惠,单位采集成本持续下降,对比高价海外订阅工具可节省50%以上费用;
隐性成本:传统工具数据滞后、筛选受限,会带来投放失误、人工二次整理等隐性成本;自建方案实时数据+自定义模型,大幅降低人工成本与投放风险。
同时对比国内飞瓜、蝉妈妈等工具,这类工具无法覆盖海外平台,不存在替代可能,Bright Data 提供了一套适合企业级海外数据采集的可扩展方案
七、总结
海外社媒网红营销已是出海品牌核心增长方式,但行业普遍存在数据造假、工具适配差、采购成本高的问题。国内 KOL 工具仅支持抖音、小红书等本土平台,无法覆盖 Instagram、TikTok 海外场景;海外付费工具价格昂贵、数据更新滞后、无法自定义筛选,难以支撑精细化投放。
借助 Bright Data Web Scraper API + Python 自建采集方案,可依托其合规代理网络、企业级防爬能力和标准化爬虫接口,实现实时采集、自定义字段、智能筛号、低成本运维,完全替代飞瓜、HypeAuditor 等工具,快速搭建专属海外 KOL 数据链路。
这套方案可有效识别注水账号、规避投放风险、精准筛选高性价比网红,显著提升出海营销 ROI,适用于出海电商、DTC 品牌与跨境 MCN 机构。
落地建议
注册 Bright Data 中文官网,领取免费额度测试接口;
部署项目代码,小批量测试数据准确性;
根据品类微调评分权重与筛选阈值;
分区域采集多国网红数据,搭建专属海外 KOL 资源池。
本文demo:https://github.com/zbsguilai/instagram_tiktok_scraper

