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

Python开发YouTube视频转音频工具出现HTTP 410运行错误如何解决

错误原因

HTTP 410 Gone 是服务端返回的标准状态码,代表请求的目标资源已经被永久移除,且没有可跳转的替代资源。
该场景下触发错误的核心原因是使用的pytube版本未适配YouTube最新的接口规则:YouTube会定期更新视频资源的抓取接口逻辑,旧版本pytube调用的资源接口已经被YouTube官方下线,因此返回410错误。

修复步骤
  • 先卸载本地已安装的旧版本pytube:
    pip uninstall pytube
  • 安装官方最新版本的pytube:
    pip install pytube --upgrade
  • 升级完成后重新运行代码即可正常抓取音频资源。
可选代码优化

原代码中手动判断操作系统拼接路径的写法冗余且容易出错,可以直接用Python内置的os.path.join方法自动适配不同系统的路径分隔符,同时用os.rename替代调用系统命令实现跨平台重命名,简化后的代码如下:

from pytube import YouTube
import pytube
import os

def main():
    video_url = input('Enter YouTube video URL: ')
    path = os.getcwd()
    name = pytube.extract.video_id(video_url)
    # 下载音频流
    YouTube(video_url).streams.filter(only_audio=True).first().download(output_path=path, filename=name)
    # 重命名为mp3格式
    origin_file = os.path.join(path, f"{name}.mp4")
    target_file = os.path.join(path, f"{name}.mp3")
    os.rename(origin_file, target_file)

if __name__ == '__main__':
    main()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 11:27:04