如何通过Twitter timelines/reverse_chronological API提取视频URL
解决Twitter逆向时间线API提取视频URL的问题
问题核心:你当前的
media.fields参数缺少了variants字段,这是获取视频播放URL的关键。Twitter v2 API中,视频的实际播放链接并不在url字段里(该字段通常对应图片的直接链接),而是存储在variants数组中,只有显式请求该字段才会返回。修改后的请求参数:
let parameters: Parameters = [ "max_results": "10", "tweet.fields": "created_at", "media.fields": "duration_ms,height,media_key,preview_image_url,type,url,width,variants", // 新增variants字段 "expansions": "author_id,attachments.media_keys", ]解析视频URL的逻辑:
- 从接口返回的
includes.media数组中,筛选出type为video或animated_gif的媒体项 - 遍历目标媒体项的
variants数组,挑选content_type为video/mp4的条目(这是可直接播放的视频文件链接) - 每个符合条件的variant里的
url就是对应的视频播放地址,还可以通过bit_rate字段选择不同清晰度的版本
- 从接口返回的
注意:
variants数组里可能包含m3u8格式的流媒体链接(content_type为application/x-mpegURL),如果需要直接下载或播放的文件链接,优先选择video/mp4类型的条目。
内容的提问来源于stack exchange,提问作者Muhammad Haroon Iqbal
相关产品推荐
相关产品推荐

