YouTube API (PHP) - получение приватного видео под моей учетной записью - PullRequest
2 голосов
/ 09 сентября 2010

Я использую Zend_Gdata_YouTube для взаимодействия с API YouTube для загрузки видео с моего сайта. Видео загружено как "личное":

$myVideoEntry->setVideoPrivate();

... и имеют уникальные теги и теги разработчика. Затем администратор может зайти в пользовательскую CMS и утвердить личные отправленные пользователем записи и сделать их общедоступными - по крайней мере, это то, что я хочу сделать.

В CMS я подключаюсь к API как аутентифицированный пользователь (Zend_Gdata_AuthSub). Я могу вытащить видео аутентифицированного пользователя так:

$videoFeed = $yt->getuserUploads('default');

Это потянет все видео, как частные, так и публичные. Но когда я пытаюсь найти конкретное видео с поисковым запросом:

$query = $yt->newVideoQuery();
$query->setSafeSearch('none');
$query->setVideoQuery('puppies');

$videoFeed = $yt->getVideoFeed($query->getQueryUrl(2));

Или по тегу:

$query = $yt->newVideoQuery();
$query->setOrderBy('viewCount');
$query->setRacy('include');
$query->setCategory('People/sometag');

// obtain a feed with videos matching the provided tag
$videoFeed = $yt->getVideoFeed($query);

Или по тегу разработчика:

$devTagUrl = 'http://gdata.youtube.com/feeds/api/videos/-/%7Bhttp%3A%2F%2Fgdata.youtube.com' .
    '%2Fschemas%2F2007%2Fdevelopertags.cat%7D' . $some_dev_tag;
$videoFeed = $yt->getVideoFeed($devTagUrl);

Частные видео вернут пустой результат. Однако, если я сделаю это видео общедоступным, то смогу извлечь его из любого из трех методов, описанных выше, причем все они выполняются при проверенном соединении.

Как я могу получить личное видео на основе тега или тега разработчика? Я что-то пропустил? Большое спасибо !!

1 Ответ

0 голосов
/ 19 октября 2010

К сожалению, это, похоже, ограничение API.Моя работа вокруг решения состояла в том, чтобы вытянуть все видео пользователя с:

$videoFeed = $yt->getuserUploads('default');

, который тянет общедоступные и частные видео.Затем я сравниваю свои теги dev с каждой записью и сопоставляю видео в PHP.

...