无法使用 Youtube Data API 删除视频

2024-01-23

无法使用 Youtube Data API 删除视频。我正在使用 Python 客户端库。

所有这些似乎都是直接来自文档,所以我真的很困惑为什么它不起作用。这是我的功能:

def delete_youtube_video_by_id(video_id):
    yt_service = gdata.youtube.service.YouTubeService()
    yt_service.email = YOUTUBE_EMAIL
    yt_service.password = YOUTUBE_SECRET_PASSWORD
    yt_service.source = YOUTUBE_SOURCE
    yt_service.developer_key = YOUTUBE_SECRET_DEVELOPER_KEY
    yt_service.client_id = YOUTUBE_CLIENT_ID
    yt_service.ProgrammaticLogin()
    video_entry = yt_service.GetYouTubeVideoEntry(video_id=video_id)
    response = yt_service.DeleteVideoEntry(video_entry)
    return response

从文档来看,如果视频被成功删除,这应该返回 True。但是,它返回 None:

>>> response = delete_youtube_video_by_id('my_youtube_video_id')
>>> type(response)
<type 'NoneType'>
>>> 

而且视频也没有被删除。我知道凭据很好,因为它们与我最初上传视频时使用的凭据相同,而且我知道 ID 很好,因为我直接从 YouTube 频道中获取了它。

有任何想法吗?


我相当确定这是因为需要从上传源中获取视频条目,而不是一般视频源。否则该条目不可编辑。

这将翻译为

video_entry = yt_service.GetYouTubeVideoEntry('https://gdata.youtube.com/feeds/api/users/default/uploads/VIDEO_ID')

Python GData 客户端库仍然使用 Data API v1,该 API 现已弃用很长时间,并且客户端库总体维护得不好。

我建议切换到v3 https://developers.google.com/youtube/v3/以及相应的新客户库 https://developers.google.com/api-client-library/python/因为这绝对是未来的环境。我们有一个现已提供少量 Python 示例 https://developers.google.com/youtube/v3/code_samples/python,虽然没有专门用于删除视频的工具,但它应该看起来像

youtube.videos().delete(id=VIDEO_ID).execute()

(假设youtube是经过正确授权的 YouTube 客户端界面,遵循该页面上的现有示例)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法使用 Youtube Data API 删除视频 的相关文章

  • Python 中的 Lanczos 插值与 2D 图像

    我尝试重新缩放 2D 图像 灰度 图像大小为 256x256 所需输出为 224x224 像素值范围从 0 到 1300 我尝试了两种使用 Lanczos 插值来重新调整它们的方法 首先使用PIL图像 import numpy as np
  • Django 管理员在模型编辑时间歇性返回 404

    我们使用 Django Admin 来维护导出到我们的一些站点的一些数据 有时 当单击标准更改列表视图来获取模型编辑表单而不是路由到正确的页面时 我们会得到 Django 404 页面 模板 它是偶尔发生的 我们可以通过重新加载三次来重现它
  • 将 saxon 与 python 结合使用

    我需要使用 python 处理 XSLT 目前我正在使用仅支持 XSLT 1 的 lxml 现在我需要处理 XSLT 2 有没有办法将 saxon XSLT 处理器与 python 一起使用 有两种可能的方法 设置一个 HTTP 服务 接受
  • OpenCV Python cv2.mixChannels()

    我试图将其从 C 转换为 Python 但它给出了不同的色调结果 In C Transform it to HSV cvtColor src hsv CV BGR2HSV Use only the Hue value hue create
  • 通过最小元素比较对 5 个元素进行排序

    我必须在 python 中使用元素之间的最小比较次数来建模对 5 个元素的列表进行排序的执行计划 除此之外 复杂性是无关紧要的 结果是一个对的列表 表示在另一时间对列表进行排序所需的比较 我知道有一种算法可以通过 7 次比较 总是在元素之间
  • Flask 会话变量

    我正在用 Flask 编写一个小型网络应用程序 当两个用户 在同一网络下 尝试使用应用程序时 我遇到会话变量问题 这是代码 import os from flask import Flask request render template
  • PyUSB 1.0:NotImplementedError:此平台不支持或未实现操作

    我刚刚开始使用 pyusb 基本上我正在玩示例代码here https github com walac pyusb blob master docs tutorial rst 我使用的是 Windows 7 64 位 并从以下地址下载 z
  • 如何从网页中嵌入的 Tableau 图表中抓取工具提示值

    我试图弄清楚是否有一种方法以及如何使用 python 从网页中的 Tableau 嵌入图形中抓取工具提示值 以下是当用户将鼠标悬停在条形上时带有工具提示的图表示例 我从要从中抓取的原始网页中获取了此网址 https covid19 colo
  • 以编程方式停止Python脚本的执行? [复制]

    这个问题在这里已经有答案了 是否可以使用命令在任意行停止执行 python 脚本 Like some code quit quit at this point some more code that s not executed sys e
  • 使用 Tkinter 显示 numpy 数组中的图像

    我对 Python 缺乏经验 第一次使用 Tkinter 制作一个 UI 显示我的数字分类程序与 mnist 数据集的结果 当图像来自 numpy 数组而不是我的 PC 上的文件路径时 我有一个关于在 Tkinter 中显示图像的问题 我为
  • Python pickle:腌制对象不等于源对象

    我认为这是预期的行为 但想检查一下 也许找出原因 因为我所做的研究结果是空白 我有一个函数可以提取数据 创建自定义类的新实例 然后将其附加到列表中 该类仅包含变量 然后 我使用协议 2 作为二进制文件将该列表腌制到文件中 稍后我重新运行脚本
  • 如何加速Python中的N维区间树?

    考虑以下问题 给定一组n间隔和一组m浮点数 对于每个浮点数 确定包含该浮点数的区间子集 这个问题已经通过构建一个解决区间树 https en wikipedia org wiki Interval tree 或称为范围树或线段树 已经针对一
  • 如何使用 OpencV 从 Firebase 读取图像?

    有没有使用 OpenCV 从 Firebase 读取图像的想法 或者我必须先下载图片 然后从本地文件夹执行 cv imread 功能 有什么办法我可以使用cv imread link of picture from firebase 您可以
  • 推荐用于视频编码的最佳质量/性能 H264 编码器?

    我正在寻找一种速度快 需要较少 CPU 功率并生成质量非常好的 mp4 视频的视频编码器 输入视频可以是任何格式并由用户上传 我唯一知道的是 FFMPEG 库 还有其他更好的吗 该程序必须有一个我感兴趣的批处理实用程序 exe 如果您愿意分
  • python获取上传/下载速度

    我想在我的计算机上监控上传和下载速度 一个名为 conky 的程序已经在 conky conf 中执行了以下操作 Connection quality alignr wireless link qual perc wlan0 downspe
  • 如何在Python中对类别进行加权随机抽样

    给定一个元组列表 其中每个元组都包含一个概率和一个项目 我想根据其概率对项目进行采样 例如 给出列表 3 a 4 b 3 c 我想在 40 的时间内对 b 进行采样 在 python 中执行此操作的规范方法是什么 我查看了 random 模
  • Scrapy:如何使用元在方法之间传递项目

    我是 scrapy 和 python 的新手 我试图将 parse quotes 中的项目 item author 传递给下一个解析方法 parse bio 我尝试了 request meta 和 response meta 方法 如 sc
  • Python Selenium:如何在文本文件中打印网站上的值?

    我正在尝试编写一个脚本 该脚本将从 tulsaspca org 网站获取以下 6 个值并将其打印在 txt 文件中 最终输出应该是 905 4896 7105 23194 1004 42000 放置的动物 的 HTML span class
  • 如何使用 Pycharm 安装 tkinter? [复制]

    这个问题在这里已经有答案了 I used sudo apt get install python3 6 tk而且效果很好 如果我在终端中打开 python Tkinter 就可以工作 但我无法将其安装在我的 Pycharm 项目上 pip
  • NotImplementedError:无法将符号张量 (lstm_2/strided_slice:0) 转换为 numpy 数组。时间

    张量流版本 2 3 1 numpy 版本 1 20 在代码下面 define model model Sequential model add LSTM 50 activation relu input shape n steps n fe

随机推荐

  • 在同一个项目中使用 gradle war 和 Ear 插件是否可能/明智?

    我发现ear插件会覆盖war插件并阻止war任务被调用 我直接调用它就解决了这个问题 这是明智的还是我应该放弃并转移到 eclipse 和 gradle 中的多项目设置 ear doFirst println force build war
  • WAMP : Forbidden 您无权访问此服务器上的 / 。 Apache/2.4.18 (Win64) PHP/5.6.19

    我的 WAMP Web 服务器有问题 我已经成功启动了一个网络服务器 我可以从任何地方访问它 那是在我的另一台计算机上 它在服务器上运行得非常好 但我决定将网络转移到我的另一台计算机上 安装 WAMP 并按照与我的另一台计算机上相同的方式进
  • Spring Batch CommandLineJobRunner找不到.xml配置文件

    我是 Spring Batch 框架的初学者 我发现了易于理解的代码http www javabeat net introduction to spring batch http www javabeat net introduction
  • 使用 jQuery touchwipe 进行某些擦除的默认擦除

    我正在使用这个很棒的插件来捕获移动设备上的擦除事件 http www netcu de jquery touchwipe iphone ipad library http www netcu de jquery touchwipe ipho
  • 如何在需要旧式 unsigned char 的地方使用新的 std::byte 类型?

    std byte是 C 17 中的一个新类型 其形式为enum class byte unsigned char 这使得在没有适当转换的情况下无法使用它 因此 我为这种类型的向量创建了一个别名来表示字节数组 using Bytes std
  • 将 GLSurfaceView 的屏幕捕获为位图

    我需要能够捕获一个图像GLSurfaceView在某个时间点 我有以下代码 relative setDrawingCacheEnabled true screenshot Bitmap createBitmap relative getDr
  • xgboost.plot_tree:二元特征解释

    我构建了一个 XGBoost 模型并试图检查各个估计器 作为参考 这是一个具有离散和连续输入特征的二元分类任务 输入特征矩阵是scipy sparse csr matrix 然而 当我去检查单个估计器时 我发现很难解释二进制输入特征 例如f
  • 无法确定引发 NullPointer 异常的原因

    我有一个看起来像这样的方法 try doStuff catch Exception ex logger error ex 我并没有真正使用像 doStuff 这样的方法名称 这只是为了让事情变得简单 在 doStuff 中 我做了很多事情
  • 对 pandas 系列中的多索引级别进行总结

    我想对具有 3 级多重索引的系列中的一个级别进行求和 边缘化 以生成具有 2 级多重索引的系列 例如 如果我有以下内容 ind tuple x for x in ABC ABc AbC Abc aBC aBc abC abc mi pd M
  • 如何使用idlelib.PyShell在tkinter程序中嵌入解释器?

    我需要将交互式 python 解释器嵌入到我的 tkinter 程序中 谁能帮我看看如何整合它 我已经看过了main 功能 但它对于我的需求来说太复杂了 但我似乎无法在不破坏它的情况下减少它 您必须执行的操作的一些细节可能取决于 IDLE
  • 图像可以在 chrome 中下载,但不能在 safari 中下载

    在我的应用程序中我使用html2canvas用于将 HTML 转换为画布 然后我使用该画布将该画布转换为图像toDataURL 在 chrome 中一切都很好 图像在页面加载后很快就会下载 但在 safari 中图像加载在同一页面中而无需下
  • 使用 ast.literal_eval 时字符串格式错误

    我使用 json 转储 然后使用 json 加载相同的数据 数据是unicode 所以我将其转换为字符串 使用 ast literla eval 我尝试获取要字典的字符串类型 但收到错误 格式错误的字符串 json加载的输出如下 data
  • 在 Java 应用程序中执行“sp_msforeachdb”

    StackOverflow 社区大家好 我来找你是为了分享我的问题之一 我必须提取一个SQL Server 实例的每个数据库中的每个表的列表 我发现了这个查询 EXEC sp msforeachdb Use SELECT DB NAME A
  • 从 Redux Observable 返回 Promise

    也许我的想法是错误的 但我使用 redux thunk 的常见模式是返回一个承诺 这样当某件事完成或失败时我可以在容器对象中执行一些额外的操作 以 Thunk 为例 动作创建者 const action data gt dispatch g
  • 选项卡布局中的标题不可见

    与 一起工作TabLayout问题是标题不可见 我覆盖了getPageTitle在适配器中 我还返回了一个字符串 该字符串将是标题 但该字符串没有显示 我已经调试了我从服务器获取标题的应用程序 是的 我跟着this https stacko
  • 获取 ListViewItem 子项

  • Vue.js 是否有内置方法将持久对象的副本添加到重复数组中

    我有一个 Vue js 应用程序 其中对一系列项目有 v repeat 我想将一个新项目添加到项目列表中 当我尝试时this items push this newItem 推送的对象仍然绑定到输入 考虑以下几点 new Vue el de
  • Xcode 4 中的 Cocoa 绑定

    Objective c 是可以学习的 可可是可以学习的 我发现 Interface Builder 及其后代 Xcode 4 完全难以理解 没有文本 相当于 C 或 Obj c 源代码 可供参考 所有的描述都是 拖到这里 连接那个 Ctl
  • 如何从私有 Docker Hub 存储库远程提取 Docker 映像?

    我在 Docker Hub 私有存储库中有多个映像 我需要使用 Docker 远程 Rest API 将这些映像拉到远程计算机上 有没有办法远程验证 这些是我想远程拨打的电话 docker login docker pull myrepo
  • 无法使用 Youtube Data API 删除视频

    无法使用 Youtube Data API 删除视频 我正在使用 Python 客户端库 所有这些似乎都是直接来自文档 所以我真的很困惑为什么它不起作用 这是我的功能 def delete youtube video by id video