Загружаем видео на Youtube, с помощью PHP

Небольшой скрипт, написанный давным-давно на PHP, работающий с Youtube-API. Позволяет загружать видео сразу с сервера...

Загружаем видео на Youtube, с помощью PHP

<?php


$yt_email = "your_acc@gmail.com"; // Логин
$yt_password = "passssssss"; // Пароль
$file='/root/video/9may.mov'; // Путь до файла

$yt_video_title = "Video Title"; // Название
$yt_video_description = "Video description"; // Описание
$yt_video_category = "News"; // Категория
$yt_video_keywords = "Актобе, Май"; // Теги

$koder_key = "..................."; // Ключ получаем тут: http://code.google.com/apis/youtube/dashboard/

$zaprosdata = "Email=".$yt_email."&Passwd=".$yt_password."&service=youtube&source=Example";
$curl = curl_init("https://www.google.com/youtube/accounts/ClientLogin");
curl_setopt($curl, CURLOPT_HEADER, "Content-Type:application/x-www-form-urlencoded");
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $zaprosdata);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1);
$response = curl_exec($curl);
curl_close($curl);

list($auth, $ytuser) = explode("\n", $response);
list($authlabel, $authvalue) = array_map("trim", explode("=", $auth));
list($ytuserlabel, $ytuservalue) = array_map("trim", explode("=", $ytuser));

$data = '<?xml version="1.0"?>
<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:media="http://search.yahoo.com/mrss/"
xmlns:yt="http://gdata.youtube.com/schemas/2007">
<media:group>
<media:title type="plain">'.$yt_video_title.'</media:title>
<media:description type="plain">'.$yt_video_description.'</media:description>
<media:category
scheme="http://gdata.youtube.com/schemas/2007/categories.cat">'.$yt_video_category.'</media:category>
<media:keywords>'.$yt_video_keywords.'</media:keywords>
</media:group>
</entry>';

$headers = array("Authorization: GoogleLogin auth=".$authvalue,"GData-Version: 2","X-GData-Key: key=".$koder_key,"Content-length: ".strlen($data),"Content-Type: application/atom+xml; charset=UTF-8");
$curl = curl_init("http://gdata.youtube.com/action/GetUploadToken");

curl_setopt($curl, CURLOPT_USERAGENT, "nmsk.dp.ua Browser");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_REFERER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_HEADER, 0);

$response = simplexml_load_string(curl_exec($curl));
curl_close($curl);

echo "Uploading...\n";

$ch = curl_init();
$data = array('token'=>$response->token,'file'=>'@'.$file);
curl_setopt($ch, CURLOPT_URL, $response->url."?nexturl=".urlencode("http://nmsk.dp.ua"));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_REFERER, 'http://nmsk.dp.ua');
curl_setopt($ch, CURLOPT_HEADER, 1);
$data = curl_exec($ch);

$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

echo "Complete...\n\nMore:\n";
echo $data;
echo "\n";
?>

Источник: Загружаем видео на Youtube, с помощью PHP