You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ScrapeTube包失效:无法提取YouTube频道视频ID返回空列表

解决ScrapeTube提取YouTube频道视频返回空列表的问题

可能原因及对应解决方案

1. ScrapeTube版本未适配YouTube最新结构

YouTube会频繁调整页面/数据接口结构,旧版本ScrapeTube可能无法解析新格式。执行以下命令更新到最新版:

pip install --upgrade scrapetube

2. 目标频道视频存在隐私限制或无公开内容

手动访问该频道(ID: UCPXnayBvF7ynbG_I3VOTgIg)确认:

  • 是否有公开可见的视频内容
  • 频道是否设置了仅订阅者可见、年龄限制等隐私规则
  • 视频是否被批量删除或设为私有状态

3. 未指定视频类型导致漏抓

默认情况下ScrapeTube可能仅抓取常规长视频,需明确指定包含Shorts、直播回放等类型:

import scrapetube
link = []
videos = scrapetube.get_channel(
    channel_id="UCPXnayBvF7ynbG_I3VOTgIg",
    include_shorts=True,
    include_live=True,
    include_upcoming=False
)

for video in videos:
    if 'videoId' in video:  # 避免键不存在的报错
        link.append(f"https://www.youtube.com/watch?v={video['videoId']}")

print(link)

4. 捕获隐藏异常

ScrapeTube的视频生成器可能在迭代时悄悄抛出未暴露的错误,添加异常捕获排查问题:

import scrapetube
link = []
videos = scrapetube.get_channel("UCPXnayBvF7ynbG_I3VOTgIg")

try:
    for video in videos:
        if 'videoId' in video:
            link.append(f"https://www.youtube.com/watch?v={video['videoId']}")
except Exception as e:
    print(f"迭代过程出错: {str(e)}")

print(link)

内容的提问来源于stack exchange,提问作者anon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 21:35:27