标签:gdata python django youtube gdata-api
我无法获得包含链接rel =“edit”的视频条目.我需要这样一个条目才能在其上调用DeleteVideoEntry(…).
我正在使用GetYouTubeVideoEntry(youtube_id = XXXXXXX)检索视频.我的yt_service使用用户名,密码和开发人员密钥进行初始化.我使用ProgrammaticLogin.这部分似乎工作正常.我使用相同的yt_service来提前上传所述视频.此外,如果我将开发人员密钥更改为虚假(在调试期间)并尝试进行身份验证,我会收到403错误.这让我相信认证工作正常.
不用说,使用GetYouTubeVideoEntry(youtube_id = XXXXXXX)检索的视频条目不包含编辑链接,我无法在DeleteVideoEntry(…)调用中使用该条目.
是否有一些特殊的方法来获取一个视频条目,其中包含一个带有rel =“edit”的链接元素?有谁能建议某种方法来解决我的问题?这可能是一个错误吗?
更新:
对于记录,当我尝试获取所有上传的源,然后循环浏览视频条目时,视频条目确实有一个编辑链接.所以使用这个工作:
uri = 'http://gdata.youtube.com/feeds/api/users/%s/uploads' % username
feed = yt_service.GetYouTubeVideoFeed(uri)
for entry in feed.entry:
yt_service.DeleteVideoEntry(entry)
但这不是:
entry = yt_service.GetYouTubeVideoEntry(video_id = video.youtube_id)
yt_service.DeleteVideoEntry(entry)
使用相同的yt_service.
解决方法:
我刚刚使用gdata和ProgrammaticLogin()删除了youtube视频
以下是重现的一些步骤:
import gdata.youtube.service
yt_service = gdata.youtube.service.YouTubeService()
yt_service.developer_key = 'developer_key'
yt_service.email = 'email'
yt_service.password = 'password'
yt_service.ProgrammaticLogin()
# video_id should looks like 'iu6Gq-tUsTc'
uri = 'https://gdata.youtube.com/feeds/api/users/%s/uploads/%s' % (username, video_id)
entry = yt_service.GetYouTubeUserEntry(uri=uri)
response = yt_service.DeleteVideoEntry(entry)
print response # True
yt_service.GetYouTubeVideoFeed(uri)有效,因为GetYouTubeVideoFeed不会检查uri而只是调用self.Get(uri,…)但最初,我想,它预计’https://gdata.youtube.com/feeds/api/视频’uri.
反之亦然yt_service.GetYouTubeVideoEntry()使用YOUTUBE_VIDEO_URI =’https://gdata.youtube.com/feeds/api/videos’,但此条目不包含rel =“edit”
希望能帮到你
标签:gdata,python,django,youtube,gdata-api 来源: https://codeday.me/bug/20190729/1575529.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。