Контакты  
 
 
Главная
 
 
 
   
Привет :)
 
 
Разделы





 
Пост  

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

 

youtube.php
  1. <?php
  2.  
  3. //#################
  4. // serj.ws
  5. //################
  6.  
  7. $yt_email = "serj@gmail.com"; // Логин
  8. $yt_password = "passssssss"; // Пароль
  9. $file='/root/video/9may.mov'; // Путь до файла
  10.  
  11. $yt_video_title = "serj.ws"; // Название
  12. $yt_video_description = "serj.ws"; // Описание
  13. $yt_video_category = "News"; // Категория
  14. $yt_video_keywords = "Актобе, Май"; // Теги
  15.  
  16. $koder_key = "..................."; // Ключ получаем тут: http://code.google.com/apis/youtube/dashboard/
  17.  
  18. $zaprosdata = "Email=".$yt_email."&Passwd=".$yt_password."&service=youtube&source=Example";
  19. $curl = curl_init("https://www.google.com/youtube/accounts/ClientLogin");
  20. curl_setopt($curl, CURLOPT_HEADER, "Content-Type:application/x-www-form-urlencoded");
  21. curl_setopt($curl, CURLOPT_POST, 1);
  22. curl_setopt($curl, CURLOPT_POSTFIELDS, $zaprosdata);
  23. curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
  24. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  25. curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1);
  26. $response = curl_exec($curl);
  27. curl_close($curl);
  28.  
  29.  
  30. list($auth, $ytuser) = explode("\n", $response);
  31. list($authlabel, $authvalue) = array_map("trim", explode("=", $auth));
  32. list($ytuserlabel, $ytuservalue) = array_map("trim", explode("=", $ytuser));
  33.  
  34.  
  35. $data = '<?xml version="1.0"?>
  36. <entry xmlns="http://www.w3.org/2005/Atom"
  37. xmlns:media="http://search.yahoo.com/mrss/"
  38. xmlns:yt="http://gdata.youtube.com/schemas/2007">
  39. <media:group>
  40. <media:title type="plain">'.$yt_video_title.'</media:title>
  41. <media:description type="plain">'.$yt_video_description.'</media:description>
  42. <media:category
  43. scheme="http://gdata.youtube.com/schemas/2007/categories.cat">'.$yt_video_category.'</media:category>
  44. <media:keywords>'.$yt_video_keywords.'</media:keywords>
  45. </media:group>
  46. </entry>';
  47.  
  48. $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");
  49. $curl = curl_init("http://gdata.youtube.com/action/GetUploadToken");
  50.  
  51. curl_setopt($curl, CURLOPT_USERAGENT, "serj.ws Browser");
  52. curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
  53. curl_setopt($curl, CURLOPT_TIMEOUT, 10);
  54. curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
  55. curl_setopt($curl, CURLOPT_POST, 1);
  56. curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
  57. curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
  58. curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
  59. curl_setopt($curl, CURLOPT_REFERER, true);
  60. curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
  61. curl_setopt($curl, CURLOPT_HEADER, 0);
  62.  
  63. $response = simplexml_load_string(curl_exec($curl));
  64. curl_close($curl);
  65.  
  66. echo "Uploading...\n";
  67.  
  68. $ch = curl_init();
  69. $data = array('token'=>$response->token,'file'=>'@'.$file);
  70. curl_setopt($ch, CURLOPT_URL, $response->url."?nexturl=".urlencode("http://serj.ws"));
  71. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  72. curl_setopt($ch, CURLOPT_POST, 1);
  73. curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
  74. curl_setopt($ch, CURLOPT_REFERER, 'http://serj.ws');
  75. curl_setopt($ch, CURLOPT_HEADER, 1);
  76. $data = curl_exec($ch);
  77.  
  78. $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
  79. curl_close($ch);
  80.  
  81. echo "Complete...\n\nMore:\n";
  82. echo $data;
  83. echo "\n";
  84. ?>

Добавить в:
 
Serj   17 июня 2012, 17:50
 
 



 
 
 
 
© SERJ.WS 2011-2020