В следующих примерах показано, как использовать API данных YouTube (v3) для выполнения функций, связанных с видео.
Получить загруженные видео канала
В этом примере извлекаются видео, загруженные на определенный канал. Пример состоит из двух шагов:
Шаг 1. Получите идентификатор плейлиста для видео, загруженных на канал.
Вызовите метод
channels.list
, чтобы получить идентификатор списка воспроизведения, содержащего видео, загруженные на канал. Значение параметраpart
запроса должно включатьcontentDetails
в качестве одной из извлекаемых частей ресурсаchannel
. В ответе API свойствоcontentDetails.relatedPlaylists.uploads
содержит идентификатор плейлиста.Есть несколько способов определить канал:
Установите для параметра
mine
значениеtrue
, чтобы получить информацию о канале YouTube текущего пользователя, прошедшего проверку подлинности. Ваш запрос должен быть авторизован с использованием OAuth 2.0.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &mine=true
Задайте для параметра
forUsername
имя пользователя YouTube, чтобы получить информацию о канале, связанном с этим именем пользователя. В этом примере для параметраforUsername
задается значениеGoogle
, чтобы получить информацию для официального канала Google на YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &forUsername=Google
Задайте для параметра
id
идентификатор канала YouTube, который однозначно идентифицирует канал, для которого вы получаете информацию. В этом примере для параметраid
задается значениеUCK8sQmJBp8GCxrOtXWBpyEA
, которое также определяет официальный канал Google на YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &id=UCK8sQmJBp8GCxrOtXWBpyEA
Шаг 2. Получите список загруженных видео
Вызовите метод
playlistItems.list
, чтобы получить список загруженных видео. Установите для параметраplaylistId
значение, полученное на шаге 1. В этом примере значение параметра равноUUK8sQmJBp8GCxrOtXWBpyEA
, что является списком видео, загруженных на официальный канал Google на YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.list? part=snippet,contentDetails,status &playlistId=UUK8sQmJBp8GCxrOtXWBpyEA
Получить самые популярные видео
В этом примере показано, как получить список самых популярных видео на YouTube, которые выбираются с помощью алгоритма, объединяющего множество различных сигналов для определения общей популярности.
Чтобы получить список самых популярных видео, вызовите метод videos.list
и задайте для chart
значение mostPopular
. При получении этого списка вы также можете установить один или оба следующих параметра:
-
regionCode
: дает указание API вернуть список видео для указанного региона. -
videoCategoryId
: определяет категорию видео, для которой должны быть получены самые популярные видео.
Приведенный ниже запрос извлекает самые популярные спортивные видео в Испании:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.search.list? part=snippet &chart=mostPopular ®ionCode=es &videoCategoryId=17
Загрузить видео
Поскольку обозреватель API не поддерживает возможность загрузки файлов, это описание не содержит ссылок на исполняемый пример. Следующие ресурсы помогут вам изменить приложение, чтобы оно могло загружать видео с помощью API v3:
Документация по методу video.insert API содержит несколько примеров кода, объясняющих, как загружать видео с помощью разных языков программирования.
В руководстве по возобновляемой загрузке объясняется последовательность HTTP-запросов, которые приложение использует для загрузки видео с помощью процесса возобновляемой загрузки. Руководство в первую очередь предназначено для разработчиков, которые не могут использовать клиентские библиотеки Google API , некоторые из которых обеспечивают встроенную поддержку возобновляемых загрузок.
Пример JavaScript для загрузки видео использует CORS (обмен ресурсами между источниками), чтобы продемонстрировать, как загрузить видеофайл через веб-страницу. Библиотека загрузки CORS, которую использует API v3, естественным образом поддерживает возобновляемую загрузку. Кроме того, в примере показано, как проверить состояние загруженного видео, извлекая часть
processingDetails
video
, а также как обрабатывать изменения состояния загруженного видео.
Проверить статус загруженного видео
В этом примере показано, как проверить статус загруженного видео. Загруженное видео будет немедленно отображаться в ленте загруженных видео аутентифицированного пользователя. Однако видео не будет отображаться на YouTube, пока оно не будет обработано.
Шаг 1: Загрузите видео
Вызовите метод
videos.insert
, чтобы загрузить видео . Если запрос выполнен успешно, ответ API будет содержатьvideo
, который идентифицирует уникальный идентификатор видео для загруженного видео.Шаг 2. Проверьте статус видео
Вызовите метод
videos.list
, чтобы проверить статус видео. Установите значение параметраid
на идентификатор видео, полученный на шаге 1. Установите значение параметраpart
наprocessingDetails
.Если запрос обработан успешно, ответ API будет содержать
video
. Проверьте значение свойстваprocessingDetails.processingStatus
, чтобы определить, обрабатывает ли YouTube видео. Значение свойства изменится на значение, отличное отprocessing
, например,succeeded
илиfailed
, когда YouTube завершит обработку видео.Тело запроса — это
video
, в котором свойствоid
указывает идентификатор видео, которое вы удаляете. В этом примере ресурс также содержит объектrecordingDetails
.Приведенный ниже запрос проверяет статус видео. Чтобы выполнить запрос в обозревателе API, вам необходимо установить значение свойства
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list? part=snippet,processingDetails &id=VIDEO_ID
Примечание. Ваше приложение может опрашивать API, чтобы периодически проверять статус только что загруженного видео. После обработки видео ваше приложение может создать бюллетень или выполнить другое действие в зависимости от статуса видео.
Обновить видео
В этом примере показано, как обновить видео, чтобы добавить информацию о времени и месте его записи. В примере есть следующие шаги:
Шаг 1. Получите идентификатор видео
Выполните шаги, описанные выше, чтобы получить загруженные видео для канала текущего пользователя, прошедшего проверку подлинности. Список можно использовать для отображения списка видео, используя идентификатор каждого видео в качестве ключа.
Примечание. Существует множество других способов получения идентификаторов видео, таких как получение результатов поиска или перечисление элементов в списке воспроизведения. Однако, поскольку видео может быть обновлено только его владельцем, получение списка видео, принадлежащих пользователю, авторизовавшему запрос API, является вероятным первым шагом в этом процессе.
Шаг 2. Обновите видео
Вызовите метод
videos.update
, чтобы обновить конкретное видео. Установите значение параметраpart
наrecordingDetails
. (Значение параметра зависит от того, какие поля метаданных видео обновляются.)Тело запроса — это
video
, в котором свойствоid
указывает идентификатор видео, которое вы обновляете. В этом примере ресурс также содержит объектrecordingDetails
.Пример ресурса ниже показывает, что видео было записано 30 октября 2013 года в Бостоне:
{ "id": "VIDEO_ID", "recordingDetails": { "location": { "latitude": "42.3464", "longitude": "-71.0975" } "recordingDate": "2013-10-30T23:15:00.000Z" } }
Чтобы выполнить запрос в обозревателе API, вам необходимо установить значение свойства
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update? part=snippet
Загрузите собственное миниатюрное изображение и установите его для видео
Вы можете использовать метод thumbnails.set
API версии 3, чтобы загрузить пользовательскую миниатюру и установить ее для видео. В вашем запросе значение параметра videoId
определяет видео, для которого будет использоваться миниатюра.
Этот запрос нельзя протестировать с помощью обозревателя API, поскольку обозреватель API не поддерживает возможность загрузки медиафайлов, что является требованием для этого метода.
Удалить видео
В этом примере показано, как удалить видео. В примере есть следующие шаги:
Шаг 1. Получите идентификатор видео
Выполните шаги, описанные выше, чтобы получить загруженные видео для канала текущего пользователя, прошедшего проверку подлинности. Список можно использовать для отображения списка видео, используя идентификатор каждого видео в качестве ключа.
Примечание. Существует множество других способов получения идентификаторов видео, таких как получение результатов поиска или перечисление элементов в списке воспроизведения. Однако, поскольку видео может быть удалено только его владельцем, получение списка видео, принадлежащих пользователю, авторизовавшему запрос API, является вероятным первым шагом в этом процессе.
Шаг 2. Удалите видео
Вызовите метод
videos.delete
, чтобы удалить конкретное видео. В запросе параметрid
указывает идентификатор видео, которое вы удаляете. Запрос должен быть авторизован с использованием OAuth 2.0. Если вы тестируете этот запрос в обозревателе API, вам потребуется заменить действительный идентификатор видео на значение параметраid
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete? id=VIDEO_ID
Сообщить об оскорбительном видео
В этом примере показано, как пожаловаться на видео, содержащее оскорбительный контент. В примере есть следующие шаги:
Шаг 1. Получите идентификаторы, объясняющие, почему на видео подается жалоба.
Отправьте авторизованный запрос методу
videoAbuseReportReasons.list
, чтобы получить список действительных причин для отметки видео. Пример ресурсаvideoAbuseReportReason
, приведенный ниже, содержит информацию о том, как пометить видео, содержащее спам или вводящее в заблуждение содержимое.{ "kind": "youtube#videoAbuseReportReason", "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/Or2VqBIilpHU7j__oPzUFCvGVBw\"", "id": "S", "snippet": { "label": "Spam or misleading", "secondaryReasons": [ { "id": "27", "label": "Spam or mass advertising" }, { "id": "28", "label": "Misleading thumbnail" }, { "id": "29", "label": "Malware or phishing" }, { "id": "30", "label": "Pharmaceutical drugs for sale" }, { "id": "31", "label": "Other misleading info" } ] } }
Как показано в ресурсе, эта причина связана со списком вторичных причин. Когда вы помечаете видео как содержащее спам, вам необходимо указать идентификатор причины, и настоятельно рекомендуется также указать второстепенную причину.
Шаг 2. Пометьте видео как оскорбительное содержание
Отправьте авторизованный запрос методу
Свойствоvideos.reportAbuse
, чтобы сообщить о видео. Тело запроса представляет собой объект JSON, который идентифицирует как помечаемое видео, так и причину, по которой оно помечается. Как отмечалось в шаге 1, по некоторым причинам второстепенная причина поддерживается и настоятельно поощряется.videoId
объекта JSON определяет помечаемое видео.Образец объекта JSON ниже помечает видео как содержащее спам или вводящее в заблуждение содержание и, в частности, использование вводящего в заблуждение уменьшенного изображения. Как показано в образце объекта JSON выше, идентификатор спама или вводящего в заблуждение контента — S . Идентификатор вводящей в заблуждение миниатюры — 28 .
{ "videoId": "VIDEO_ID", "reasonId": "S", "secondaryReasonId": "28", "comments": "Testing the video flagging feature.", "language": "en" }
Запрос
videos.reportAbuse
должен быть авторизован с использованием OAuth 2.0. Ссылка ниже загружает указанный выше объект JSON в обозревателе API. Чтобы протестировать запрос, вам нужно заменить действительный идентификатор видео на значение свойстваvideoId
. Помните, что отправка этого запроса фактически пометит видео.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse