我正在尝试使用 Python 和 API v3.0 获取所有最近 Youtube 上传的列表。我正在使用 youtube.search().list,但结果都是在过去几年中看似随机的时间上传的,并且没有按日期排序。我附上了我的代码示例。
def getSearchResults():
""" Perform an empty search """
search_results = youtube.search().list(
part="snippet",
order="date",
maxResults=50,
type="video",
q=""
).execute()
return search_results
def getVideoDetails(video):
""" Get details of search results """
video_id = video["id"]["videoId"]
video_title = video["snippet"]["title"]
video_date = video["snippet"]["publishedAt"]
return video_id, video_title, video_date
search_results = getSearchResults()
for result in search_results["items"]:
print getVideoDetails(result)
任何帮助是极大的赞赏!
编辑:重试几次后,有时我会得到正确的输出(按上传日期排序的最近上传的视频),有时我不会(导致看似随机时间的视频)。我不知道结果取决于什么,但在一天中的某些时候它可以工作,而在其他时候则不行,所以问题似乎出在 API 而不是我的代码上。
编辑 2: API 有问题的进一步证据:在API Reference 的 youtube.search().list 的 Try It 部分按日期或标题排序也很奇怪。
更新: 谷歌已经承认了这个问题并且似乎已经修复了它。