Youtube V3 API不对视频进行排序

问题描述 投票:0回答:1

所以我一直在使用youtube api刮一个频道。一切都工作正常,直到3天前(03/15/2019),结果不再排序。似乎无论我在订单参数中放置什么,结果都是一样的。谁能告诉我它为什么不起作用?这是代码片段:

import re
import os
import json
import MySQLdb
from pytube import YouTube
import urllib
import isodate
import sys

def get_all_video_in_channel(channel_id):
    api_key = '<MY KEY>'
    video_url = 'https://www.googleapis.com/youtube/v3/videos?part=snippet,contentDetails&id={}&key={}'
    first_url = 'https://www.googleapis.com/youtube/v3/search?key={}&channelId={}&part=snippet,id&order=date&maxResults=50'.format(api_key, channel_id) #order by date but won't work

    res = []
    url = first_url
    while True:
        inp = urllib.urlopen(url)
        resp = json.load(inp)
        vidIds = []
        for jobject in resp['items']:
            if jobject['id']['kind'] == "youtube#video":
                vidIds.append(jobject['id']['videoId'])

        vidreq = urllib.urlopen(video_url.format(",".join(vidIds),api_key))
        vidres = json.load(vidreq)
        for vidjson in vidres['items']:
            res.append(vidjson)
        if (len(res) >= 50):
            break
        try:
            next_page_token = resp['nextPageToken']
            url = first_url + '&pageToken={}'.format(next_page_token)
        except:
            break

    return res

c_id = 'UCycyxZMoPwg9cuRDMyQE7PQ'
episodes = get_all_video_in_channel(c_id)

编辑:我做了更多的研究,人们说由于Youtube在删除新西兰拍摄视频方面做了一些事情,API确实无法正常工作,很快就会再次正常工作。

python youtube-data-api pytube
1个回答
0
投票

我建议你看看答案https://stackoverflow.com/a/55220182/8327971。这是谷歌已知和公认的问题:https://issuetracker.google.com/issues/128673552

© www.soinside.com 2019 - 2024. All rights reserved.