15megatonn
@15megatonn

Получение списка видео канала youtube?

Возможно кто то знает как получить список видео канала с помощью youtube api? Документацию читал, но что то мне это не особо помогло.
Ну или хотя бы алгоритм действий для этого случая.
  • Вопрос задан
  • 1331 просмотр
Пригласить эксперта
Ответы на вопрос 1
reli
@reli
Python-devel
Для получения конкретной записи, рядом с этим есть выборка всего списка, и так же распарсиваешь!
def get_small_image_url(self):
        return 'http://img.youtube.com/vi/%s/%s.jpg' % (self.video_id, random.randint(1, 3))

    def get_hqdefault(self):
        return 'http://i1.ytimg.com/vi/%s/hqdefault.jpg' % self.video_id

    def get_mqdefault(self):
        return 'http://i1.ytimg.com/vi/%s/mqdefault.jpg' % self.video_id

    def get_sddefault(self):
        return 'http://i1.ytimg.com/vi/%s/sddefault.jpg' % self.video_id

    def get_video_id(self, url):
        link = urlparse.urlparse(url)
        if link.hostname == 'youtu.be':
            return link.path[1:]
        if link.hostname in ('www.youtube.com', 'youtube.com'):
            if link.path == '/watch':
                state = urlparse.parse_qs(link.query)
                return state['v'][0]
            if link.path[:7] == '/embed/':
                return link.path.split('/')[2]
            if link.path[:3] == '/v/':
                return link.path.split('/')[2]
        return False

    def get_meta(self, video_id):
        api_token = 'ТУТ ТВОЙ ТОКЕН, ПОЛУЧЕННЫЙ В ГУГЕЛЬ КОНСОЛЬ'
        url = 'https://www.googleapis.com/youtube/v3/videos?part=snippet&id=%s&key=%s' % (video_id, api_token)
        response = json.load(urllib.urlopen(url))
        print response
        context = {
            'title': response['items'][0]['snippet']['localized']['title'],
            'desc': response['items'][0]['snippet']['localized']['description']
        }
        return context

    def save(self, force_insert=False, force_update=False, using=None,
             update_fields=None):
        video_id = self.get_video_id(self.url)
        meta = self.get_meta(video_id)
        self.video_id = video_id
        self.title = meta['title']
        self.description = meta['desc']
        super(Videos, self).save(
            force_insert=force_insert,
            force_update=force_update,
            using=using,
            update_fields=update_fields
        )
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы