Python获取TikTok视频元数据:原接口失效后的最简方案问询
最简获取TikTok公开视频详情的Python方法
一、非官方轻量方案(快速实现,适合公开内容)
如果只是快速获取公开视频的元数据(标题、时长、作者等),可以用第三方非官方库绕开403限制,这类库模拟了浏览器请求逻辑,无需复杂授权。
步骤:
- 安装依赖库:
pip install TikTokApi requests
(注:部分环境可能需要额外安装playwright用于模拟浏览器,执行python -m playwright install)
- 示例代码:
from TikTokApi import TikTokApi def get_tiktok_video_details(post_id): with TikTokApi() as api: # 模拟无登录会话 video = api.video(id=post_id) data = video.info() # 提取需要的元数据 details = { "标题": data["desc"], "时长(秒)": data["video"]["duration"], "作者昵称": data["author"]["nickname"], "作者ID": data["author"]["uniqueId"], "点赞数": data["stats"]["diggCount"], "评论数": data["stats"]["commentCount"] } return details # 使用示例,替换为目标视频的post_id video_details = get_tiktok_video_details("替换为你的视频post_id") print(video_details)
注意:非官方库依赖TikTok的未公开接口,随时可能因平台反爬策略失效,适合临时需求或测试场景。
二、官方API合规方案(无需用户登录,简化授权)
官方的视频查询接口并非必须实现用户登录,用应用级访问令牌即可查询公开视频,流程比你想象的简单:
步骤:
获取应用凭证:在TikTok开发者后台,找到你注册的应用,复制
Client Key和Client Secret。换取应用级访问令牌:
import requests def get_app_access_token(client_key, client_secret): url = "https://open.tiktokapis.com/v2/oauth/token/" payload = { "client_key": client_key, "client_secret": client_secret, "grant_type": "client_credentials" } response = requests.post(url, data=payload) return response.json()["access_token"]
- 调用视频查询接口:
def get_official_video_details(access_token, video_id): url = "https://open.tiktokapis.com/v2/video/query/" headers = { "Authorization": f"Bearer {access_token}", "Content-Type": "application/json" } payload = { "video_id": video_id, "fields": "id,title,duration,author,stats" } response = requests.post(url, json=payload, headers=headers) return response.json() # 使用示例 client_key = "你的Client Key" client_secret = "你的Client Secret" token = get_app_access_token(client_key, client_secret) official_details = get_official_video_details(token, "替换为视频ID") print(official_details)
说明:应用级令牌仅能访问公开视频数据,无需引导用户登录授权,完全满足你获取公开视频元数据的需求,且合规稳定。
内容的提问来源于stack exchange,提问作者Edmond
相关产品推荐
相关产品推荐

