使用Python YouTube API获取播放列表中视频的标题时遇到了一些问题。我正确配置了环境,当我从API文档中复制它时,它适用于添加的播放列表ID,但是当我尝试使用其他播放列表中的一个时,我收到错误。
以下是我写的一些代码:(在此示例中,我尝试获取视频的标题from here)
import gdata.youtube
import gdata.youtube.service
yt_service = gdata.youtube.service.YouTubeService()
yt_service.ssl = True
# a typical playlist URI
playlist_uri = "http://gdata.youtube.com/feeds/api/playlists/PLCD939C4D974A5815"
playlist_video_feed = yt_service.GetYouTubePlaylistVideoFeed(playlist_uri)
# iterate through the feed as you would with any other
for playlist_video_entry in playlist_video_feed.entry:
print playlist_video_entry.title.text
这是我得到的错误:
RequestError: {'status': 400, 'body': 'Invalid playlist id', 'reason': 'Bad Request'}
我对此感到非常沮丧,并希望得到一些帮助。谢谢!
答案 0 :(得分:4)
删除请求URI中的PL
:
playlist_uri = "http://gdata.youtube.com/feeds/api/playlists/CD939C4D974A5815"
我不确定为什么 YouTube需要它采用这种格式,但它必须是。
您也可以在字符串上执行.replace('playlists/PL', 'playlists/')
。