使用Pytube获取YouTube直播流下载链接遇LiveStreamError求助
解决YouTube直播流下载链接获取问题
问题原因
你遇到的LiveStreamError是因为pytube原生不支持处理YouTube直播流,它的设计核心针对已上传的固定视频,无法解析动态的直播流资源。
解决方案:使用yt-dlp
yt-dlp是youtube-dl的分支,对直播流的支持更完善,能直接获取直播流的播放/下载链接。
步骤1:安装yt-dlp
pip install yt-dlp
步骤2:获取直播流链接的代码示例
import yt_dlp link = "https://www.youtube.com/watch?v=9pmsuKWKf90" ydl_opts = { 'quiet': True, 'no_warnings': True, 'format': 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]' # 可自定义需要的格式 } with yt_dlp.YoutubeDL(ydl_opts) as ydl: info = ydl.extract_info(link, download=False) # 提取直播流有效链接 stream_url = info['url'] print("直播流链接:", stream_url)
关键说明
- 直播流地址有有效期,过期后需重新获取,yt-dlp会自动解析当前有效的流地址
- 若要指定特定itag,修改
format参数即可,比如'format': '137'对应1080p视频流 - 直接下载直播流的话,把
download=False改为download=True,yt-dlp会自动持续拉取流直到直播结束
内容的提问来源于stack exchange,提问作者Мицок
相关产品推荐
相关产品推荐

