Парсер видео с ютуба?

Здравствуйте есть код парсера с ютуба и все как бы работает но по одному кею парсит одно видео , помогите допилять чтоб парсил несколько видео с кея, и как вывести рисунок с кея и дискриптион

function youtube($key) {
 
	$ch = curl_init();
    //http://img.youtube.com/vi/6g6g2mvItp4/1.jpg
	//curl_setopt($ch, CURLOPT_URL, 'https://www.youtube.com/results?sp=CAASAggC&q='.urlencode($key));
	curl_setopt($ch, CURLOPT_URL, 'https://www.youtube.com/results?search_query='.urlencode($key));	
	curl_setopt($ch, CURLOPT_HEADER, false);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	curl_setopt($ch, CURLOPT_TIMEOUT, 10);
	curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 6);
	curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.154 Safari/537.36');
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
	curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); 
	curl_setopt($ch, CURLOPT_FTP_SSL, CURLFTPSSL_TRY);
	$result = curl_exec($ch);
	curl_close($ch);

	preg_match_all('!data-context-item-id="(.*?)"!siu', $result, $lines);
	$countresult = count($lines[1]);
	if ($countresult > 0) {$countresult = $countresult - 1;}
	$randnum = mt_rand(0, $countresult);
	$youtubeurl = @trim($lines[1][$randnum]);

	// название:
	preg_match_all('!\<h3 class="yt-lockup-title "\>(.*?)\</h3\>!siu', $result, $lines);
	$youtubetitle = @trim(strip_tags($lines[1][$randnum]));
	$youtubetitle = str_ireplace('Duration:', '', $youtubetitle);
	$youtubetitle = str_ireplace('Продолжительность:', '', $youtubetitle);
	$youtubetitle = str_ireplace('- Playlist', '', $youtubetitle);
	$youtubetitle = trim($youtubetitle);

	if ($youtubeurl != '') {
		$content_parser = '<p>'.$youtubetitle.'</p>
	<iframe width="80%" height="400" src="https://www.youtube.com/embed/'.$youtubeurl.'" frameborder="0" allowfullscreen></iframe>';
	} else {
		$content_parser = '';
	}
	return $content_parser;
}
  • Вопрос задан
  • 797 просмотров
Пригласить эксперта
Ответы на вопрос 1
Exploding
@Exploding
wtf?
Бери один из многочисленных парсеров, например, phpQuery, htmlSql и получи массив распаренных данных.
По массиву проходимся, получаем каждое видео.
Радуемся.
Upd. Если нет желания юзать эти либы - нужно получить массив данных (например explode('h3', $result), по нему идти и юзать код приведенный в вопросе (с некоторым допилом конечно же)
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы