@null_object

Как получить оригинальную ссылку на видео YouTube?

Как получить оригинальную ссылку на видео YouTube, как например на многих сервисах скачивания видео. Немного поискав нашел несколько статей (https://ru.stackoverflow.com/questions/547722/%D0%... , https://habrahabr.ru/post/137496/). В первой даже приведен код на JavaScript, но когда начал писать что-то подобное, столкнулся с некоторыми проблемами:
  1. При нескольких обращениях по адресу 'https://www.youtube.com/get_video_info?video_id={V... возвращается по-разному структурированная информация. Например: При первом обращении 5a8ebd701af38380963535.jpeg При втором обращении 5a8ebdb6465d3949903363.jpeg Не сказать что это проблема, т.к. ссылки всё равно остаются.
  2. Из-за непонятной (мне) структуры этой информации я не могу разобраться как же мне всё-таки правильно разбить всю информацию и, предположим создать массив РАЗРЕШЕНИЕ_ВИДЕО => ССЫЛКА_НА_СООТВЕТСТВУЮЩИЙ ФОРМАТ


Ну и наконец невероятно-топорная реализация, которая изредка работает
$config = urldecode(file_get_contents('https://www.youtube.com/get_video_info?video_id='.$id));
	$end = array();

	echo '<pre>';

	foreach ( explode('&', $config) as $key => $value ) 
	{
		array_push( $end, explode( '=', $value ) );
	}

	foreach ( $end as $el ) 
	{
		if( $el[0] == 'url' )
			echo '<a href="'.urldecode($el[1]).'">'.urldecode($el[1]).'</a><br>';
	}


P.S. надоел iframe YouTube
  • Вопрос задан
  • 274 просмотра
Решения вопроса 1
doublench21
@doublench21
Зачем мучиться, если есть youtube-dl
Собственно, из php вызываете youtube-dl и получаете массив ссылок. Сразу предупреждаю, что ссылки на видео идут в качестве до 720p. Для качества выше, нужно будет склеивать видео и звуковую дорожку, т.к. они идут отдельно. (ffmpeg в помощь)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
от 2 000 до 4 000 usd.
Duotek Москва
До 120 000 руб.
Teamlead Краснодар
До 100 000 руб.
21 авг. 2018, в 14:23
350000 руб./за проект
21 авг. 2018, в 13:54
5000 руб./за проект
21 авг. 2018, в 13:30
5000 руб./за проект