новый идентификатор канала YouTube и список iframe user_uploads

#iframe #youtube #youtube-api #playlist

#iframe #YouTube #youtube-api #список воспроизведения

Вопрос:

Похоже, что youtube теперь использует идентификаторы для своих каналов вместо имен (часть api V3)

Однако, похоже, что встроенный проигрыватель плейлистов iframe не может обрабатывать эти идентификаторы каналов

пример канала https://www.youtube.com/channel/UCpAOGs57EWRvOPXQhnYHpow

тогда идентификатор будет UCpAOGs57EWRvOPXQhnYHpow

Теперь попробуйте загрузить это

http://www.youtube.com/embed/?listType=user_uploadsamp;list=UCpAOGs57EWRvOPXQhnYHpow

Кто-нибудь может пролить свет на эту проблему? Или есть какое-то скрытое имя пользователя?

Я также разместил этот вопрос на веб-сайте gdata-issueshttp://code.google.com/p/gdata-issues/issues/detail?id=6463

Ответ №1:

Проблема здесь в том, что канал не является списком воспроизведения; каналы могут иметь несколько списков воспроизведения, однако параметр ListType предназначен для поиска фактического объекта информации о списке воспроизведения. Документированный способ обойти это — использовать API данных и вызвать конечную точку канала, просматривая часть contentDetails:

 GET https://www.googleapis.com/youtube/v3/channels?part=contentDetailsamp;id=UCuo5NTU3pmtPejmlzjCgwdwamp;key={YOUR_API_KEY}
  

В результате вы получите все каналы, связанные с этим каналом, из которых вы можете выбирать:

 "contentDetails": {
    "relatedPlaylists": {
        "uploads": "UUuo5NTU3pmtPejmlzjCgwdw"
    }
}
  

Если доступно (иногда с OAuth), также могут быть списки «просмотр позже», списки «лайков» и т.д.

Это может показаться большими накладными расходами. В краткосрочной перспективе, однако, можно отметить, что разные каналы имеют программные имена; так, например, если мой пользовательский канал начинается с UC, а затем длинной строки, этот UC означает «пользовательский канал» — и лента загрузок будет начинаться с «UU» (пользовательские загрузки), а затем содержать остальную часть той же длинной строки. (у вас также должно быть ‘LL’ для списка лайков, ‘WL’ для списка просмотра позже, ‘HL’ для списка истории, ‘FL’ для списка избранного и т.д. Это НЕ задокументировано, и поэтому нет гарантии, что такое соглашение об именовании сохранится. Но, по крайней мере, на данный момент, вы могли бы изменить свою строку идентификатора с начинающейся с UC на начинающуюся с UU, вот так:

 http://www.youtube.com/embed/?listType=user_uploadsamp;list=UUpAOGs57EWRvOPXQhnYHpow
  

И это прекрасно встраивается.

Комментарии:

1. Вау, откуда ты это взял? Кажется, это работает.

2. Просто хотел добавить, это все еще работает, НО вам нужно изменить «user_uploads» на список воспроизведения.

Ответ №2:

Просто чтобы сообщить о текущем положении вещей — изменение, предложенное jlmcdonald, больше не работает, но вы все еще можете получить правильную ссылку для встраивания через videoseries (с тем же изменением UC на UU). I.o.w. ссылка, подобная

http://www.youtube.com/embed/videoseries?list=UUpAOGs57EWRvOPXQhnYHpow

работает на момент написания этого.

Комментарии:

1. Это не работает с моим youtube.com/embed/videoseries?list=UC_xbondqccQw691wA-xum_A

2. @CainNuke это youtube.com/embed/videoseries?list=UU_xbondqccQw691wA-xum_A — необходимо изменить выделенную букву: с U C _xbondqccQw691wA-xum_A на U U _xbondqccQw691wA-xum_A.