注册账号免费测试短剧平台API数据接口
当下短剧行业发展迅猛,抖音、快手、红果等主流平台聚集了海量短剧内容。item_get_video接口作为获取单部短剧视频详情的核心工具,能精准返回短剧播放地址、分集信息、作者数据等关键内容,是短剧聚合平台搭建、分销推广、竞品监测等场景的核心技术支撑。以下攻略将覆盖主流短剧平台接口特性、对接流程、代码实现及问题排查,助力开发者高效完成对接。
item_get_video接口区别于批量获取视频列表的接口,聚焦单部短剧的精细化信息提取。核心作用是输入短剧 ID、分集 ID 等关键标识,返回该短剧单集 / 全集的播放链接、时长、封面、作者信息等详情,部分平台还支持返回付费规则、分销参数等短剧专属字段。其适配的核心场景包括:
短剧聚合平台:接入多平台短剧,为用户提供一站式播放入口;
分销推广场景:获取短剧播放链接和分销参数,快速生成推广素材;
竞品监测:提取竞品短剧的播放数据、更新节奏,分析运营策略;
小程序开发:在短剧小程序中加载指定剧集,实现沉浸式播放体验。
不同短剧平台的item_get_video接口在权限要求、参数格式和返回字段上差异较大,以下是核心平台的特性梳理:
主流平台接口权限获取分为官方申请和第三方服务商接入两种方式,具体步骤如下:
开发语言与依赖:优先选择 Python(数据处理高效,适配多平台接口调试),核心依赖包括 requests(网络请求)、hmac(签名加密)、json(数据解析)、pandas(数据归档);
调试工具:Postman(快速验证接口可用性)、在线 HmacSHA256/MD5 工具(校验签名正确性)、浏览器开发者工具(排查小程序播放链接问题);
存储与加速:若搭建播放平台,建议搭配阿里云 OSS、腾讯云 COS 存储封面素材,结合 CDN 加速播放链接,提升用户体验。
以下是主流平台item_get_video接口的详细对接流程,包含核心参数、签名生成和 Python 代码示例,均基于官方规范和合规服务商规则编写。
红果短剧通过第三方服务商提供接口,流程简洁,适合快速接入。
import requests
def get_hongguo_video(video_id, apikey):
"""获取红果短剧指定分集播放链接"""
api_url = "https://www.52api.cn/api/hg_duanju"
# 构造请求参数
params = {
"apikey": apikey,
"type": "video",
"video_id": video_id
}
try:
response = requests.get(api_url, params=params, timeout=15)
response.raise_for_status()
result = response.json()
if result.get("code") == 200:
# 解析返回的播放数据
video_data = {
"短剧标题": result["data"]["title"],
"播放链接": result["data"]["video_url"],
"时长": result["data"]["duration"],
"封面图": result["data"]["cover"]
}
return video_data
else:
print(f"接口错误:{result.get('msg', '未知错误')}")
return None
except requests.exceptions.RequestException as e:
print(f"请求异常:{str(e)}")
return None
# 调用示例
if __name__ == "__main__":
MY_APIKEY = "你的apikey"
TARGET_VIDEO_ID = "目标分集ID"
video_info = get_hongguo_video(TARGET_VIDEO_ID, MY_APIKEY)
if video_info:
print("红果短剧视频信息:", video_info)穿山甲接口适配短剧广告推广场景,签名规则较严格,需通过 HmacSHA256 加密。
请求头参数:包含 x-csj-sp-site-id(应用 ID)、x-csj-sp-timestamp(时间戳)、x-csj-sp-nonce(16 位随机串)等;
签名规则:拼接时间戳、site-id、版本号、随机串和请求体,通过 HmacSHA256 加密生成签名。
import requestsimport hmacimport hashlibimport timeimport randomimport string# 配置信息SERVER_KEY = "你的穿山甲server key"SITE_ID = "5175152" # 穿山甲应用IDVERSION = "1.0"def generate_nonce(length=16):
"""生成16位随机字符串"""
return ''.join(random.choices(string.ascii_letters + string.digits, k=length))def generate_sign(timestamp_str, nonce, body):
"""生成HmacSHA256签名"""
payload = f"{timestamp_str}{SITE_ID}{VERSION}{nonce}{body}"
h = hmac.new(SERVER_KEY.encode('utf-8'), payload.encode('utf-8'), digestmod=hashlib.sha256)
return h.hexdigest()def get_chuanjiashan_shortplay(video_id, uid):
"""获取穿山甲短剧视频信息"""
api_url = "https://csj-sp.csjdeveloper.com"
timestamp = str(int(time.time() * 1000))
nonce = generate_nonce()
# 构造请求体
body = {
"uid": uid,
"shortplay_id": video_id,
"index": 1 # 第一集
}
body_str = str(body)
# 生成签名
sign = generate_sign(timestamp, nonce, body_str)
# 构造请求头
headers = {
"x-csj-sp-site-id": SITE_ID,
"x-csj-sp-timestamp": timestamp,
"x-csj-sp-version": VERSION,
"x-csj-sp-nonce": nonce,
"x-csj-sp-sign": sign,
"Content-Type": "application/json"
}
try:
response = requests.post(api_url, json=body, headers=headers, timeout=15)
response.raise_for_status()
return response.json()
except requests.exceptions.RequestException as e:
print(f"请求失败:{str(e)}")
return None# 调用示例if __name__ == "__main__":
video_info = get_chuanjiashan_shortplay(7, 156416514)
print("穿山甲短剧信息:", video_info)若需批量获取多部短剧的视频信息,可结合搜索接口先获取剧集 ID 列表,再循环调用item_get_video接口,同时需控制调用频率避免超限:
def batch_get_videos(video_ids, access_token, platform="douyin"):
"""批量获取多剧集视频信息"""
all_videos = []
for idx, video_id in enumerate(video_ids):
if platform == "douyin":
video_info = get_douyin_video(video_id, access_token)
elif platform == "hongguo":
video_info = get_hongguo_video(video_id, "你的apikey")
if video_info:
all_videos.append(video_info)
# 控制频率,避免超限
time.sleep(2)
# 保存到Excel
import pandas as pd
pd.DataFrame(all_videos).to_excel("短剧视频列表.xlsx", index=False)
return all_videos在短剧小程序中对接接口时,需注意两点关键优化:
参数拼接规范:快手短剧需在落地页拼接 ksPlayletId 和 ksEpisodeId,抖音需携带 aweme_id,否则会导致挂载失败;
播放体验优化:使用swiper组件结合video组件,实现上下滑动切换剧集;预加载下一集视频,减少播放卡顿。
短剧内容更新频率较低,可通过 Redis 缓存视频信息:
缓存 key 设为video_平台_视频ID,缓存时长设为 1 小时;
对已下架的短剧,缓存空结果并设置 10 分钟有效期,避免无效请求。
参数校验:确认短剧 ID、video_id 等标识正确,可通过平台官网或搜索接口验证 ID 有效性;
签名验证:用在线 HmacSHA256/MD5 工具手动计算签名,与代码生成结果对比,排查签名错误;
接口独立测试:先用 Postman 发送请求,确认接口返回正常后再对接代码,排除代码逻辑干扰。
合规使用数据抖音开放平台:获取的短剧播放链接仅用于合规场景,禁止盗链或商业化售卖;分销需获得平台授权,标注来源;
密钥安全管理:生产环境中,将 appkey、secret 等密钥存储在环境变量或配置中心,避免硬编码;定期轮换密钥;
异常兜底方案:接口请求失败时,返回默认提示并记录日志;播放链接失效时,提供刷新按钮重新获取最新地址。