невозможно скачать видео с YouTube с помощью класса phptube - PullRequest
1 голос
/ 09 апреля 2010

Я использую класс phptube для загрузки вашего видео с трубки.

с этого сайта

В коде я вставляю URL-адрес YouTube в поле ввода, но есть ошибки ниже.

Warning: file_get_contents(http://www.youtube.com/get_video?video_id=&t=)
[function.file-get-contents]: failed to open stream: HTTP request failed! 
HTTP/1.0 404 Not Found

и

Warning: file_put_contents(./flvs/3Hx9VsqMUug.flv) [function.file-put-contents]:
failed to open stream: No such file or directory in E:\xampp\htdocs\vdo\utube
\functions.php on line 19
path:./flvs/3Hx9VsqMUug.flv

скажите пожалуйста где проблема ???

UPDATE:

вот основной код

<code>$url = "http://www.youtube.com/watch?v=".$video_id;
            //where $video_id=nlZJ7RsyC0g
    $this->req =& new HTTP_Request($url);
    //echo "<pre>";
    //print_r($this->req);
    //echo "
"; //умереть; $ response = $ this-> req-> sendRequest (); // echo $ response; умереть; if (PEAR :: isError ($ response)) { // echo "inside if"; $ Response-> GetMessage () "\ п". } еще { // echo "inside else"; $ page = $ this-> req-> getResponseBody (); // print_r ($ страницы); // var_dump ($ страницы); //умереть; preg_match ( "/ video_id = (\ ш *) /", $ странице, $ мв); $ v_id = $ mv [1]; preg_match ( "/ & т = ([\ W] *) и /", $ странице, $ билетов); $ ticket = $ tickets [1]; $ curl = ""; $ curl. = $ v_id; $ curl. = "& t ="; $ curl. = $ ticket; // echo $ curl; $ url = "http://www.youtube.com/get_video?video_id=".$curl; echo $ url; умереть; if ($ this-> debug) вернуть $ url;

вывод ($ url) http://www.youtube.com/get_video?video_id=nlZJ7RsyC0g&t=

здесь $t равно нулю, как получить $ticke т из URL-адреса YouTube

Ответы [ 3 ]

1 голос
/ 07 марта 2012

Вы пробовали другой класс - попробуйте этот - работает для меня, и у него есть все, что вам может понадобиться, чтобы получить видео и все связанные данные: PHP Youtube Class

1 голос
/ 09 апреля 2010

Ваша вторая ошибка в том, что у вас нет каталога с именем /flvs/. Создайте это в той же директории, что и ваш исполняемый скрипт, и вы получите золотой.

Что касается вашей первой ошибки, похоже, YouTube может блокировать ваш сервер. Попробуйте настроить пользовательский агент перед выполнением запроса:

ini_set('user_agent', 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9');

(Я нашел этот фрагмент в Интернете вместо того, чтобы найти время, чтобы написать свой собственный. Просто говорю.)

Кроме того, не похоже, что вы передаете какие-либо параметры (?video_id=&t=). Либо плагин phptube, который вы используете, отключен, либо вы не передаете правильные значения. Каков ваш вклад?

Надеюсь, это поможет!

0 голосов
/ 27 июля 2012

Я знаю, что этот пост чертовски стар. Но так как эта страница находится в первых пяти результатах поиска Google для "PHP-класс для загрузки видео с YouTube" - и, следовательно, другие могут натолкнуться на эту тему, я хотел бы сослаться на свою собственную (открыть Исходный код) Класс PHP, который полностью функционален (на момент написания этого) и - сверху - имеет дополнительную функцию не только для загрузки видео с YT, но и для преобразования их в аудиофайлы mp3.

Вы можете найти его на моем GitHub: https://github.com/eyecatchup/php-yt_downloader Надеюсь, это кому-нибудь поможет.

...