Получение превью картинки для видео с YouTube

Это небольшая статья о том как можно получить превью картинку для видеоролика с youtube. Для этого нам нужно только урл на видеоролик.
Прежде чем начать писать код нужно понять, что мы будем делать. Немного поискав в интернете я нашел описание того, где хранит свои картинки ютуб. Все картинки складируются на сервере, к которому можно обратится по адресу http://img.youtube.com. Далее, картинки для видео лежат в папке /vi/, в ней для каждого видео создается папка с именем, которое фигурирует в урле на видео. Имя папки передаются в урле в параметре embed или v. Параметры разные, поскольку ссылки на видео могут быть разные — либо это ссылка из браузера, либо это ссылка, которая находится в ifame — который в свою очередь используется для импорта видео на сторонние сайты.

Итак, теперь мы знаем, что картинка находится по такому пути http://img.youtube.com/vi/значение из урла/имя картинки. Единственное что нам нужно узнать это имя картинки. Тут тоже все просто — ютуб создает несколько превьюшек, но самая главная, которая используется называется 0.jpg. Теперь все ясно, и единственное что остается, это просто вытащить из урла параметр и подставить в путь.
А вот теперь и сам код, для получения превью картинки для видео с ютуба.

//$video ='http://www.youtube.com/watch?v=LUIf4vFW-G8&feature=share&list=PL_Bh9dvMw1uMo53x5Ryyeghv5xXApz8wU';
$video ='<iframe width="560" height="315" src="//www.youtube.com/embed/LUIf4vFW-G8?list=PL_Bh9dvMw1uMo53x5Ryyeghv5xXApz8wU" frameborder="0" allowfullscreen></iframe>';
if (preg_match('/[http|https]+:\/\/(?:www\.|)youtube\.com\/watch\?(?:.*)?v=([a-zA-Z0-9_\-]+)/i', $video, $matches) || preg_match('/(?:www\.|)youtube\.com\/embed\/([a-zA-Z0-9_\-]+)/i', $video, $matches)) {
    $image = 'http://img.youtube.com/vi/'.$matches[1].'/0.jpg';
}else{
    $image = false;
}
echo $image;
Рассказать друзьям:


Получение превью картинки для видео с YouTube: 1 комментарий

  1. и чо код? Куда его вставлять?
    Подробнее написать нехватило догадки наверно.
    Я тоже могу поставить кусок мяса на крыльцо и догадывайся что дальше с ним делать.
    пипец полный.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*