2012-12-17 149 views
1

我正在製作網站,您可以從YouTube上搜索或欣賞音樂視頻並在網站上播放它們。 有一個問題。我無法正確地從YouTube上提取歌曲和藝術家。 我做了這樣的功能:從youtube音樂視頻中提取歌曲和藝術家

$watch = $_GET['var']; 
//id of the video 
$code = $watch; 
// Get video feed info (xml) from youtube, but only the title | http://php.net/manual/en/function.file-get-contents.php 
$video_feed = file_get_contents("http://gdata.youtube.com/feeds/api/videos?v=2&q=".$code."&max-results=1&fields=entry(title)&prettyprint=true"); 
// xml to object | http://php.net/manual/en/function.simplexml-load-string.php 
$video_obj = simplexml_load_string($video_feed); 
// Get the title string to a variable 
$video_str = $video_obj->entry->title; 
// Output 
echo "<br/>\n"; 
$new = explode("-", $video_str); 

$watch是YouTube視頻ID。 YouTube上的官方音樂視頻就是這樣。 "eminem - without me" 我能得到這首歌和藝術家的唯一方法就是這樣。但是對於音樂視頻來說,格式是不同的。標題中沒有「 - 」,所以我無法從YouTube上提取我需要的信息。我想知道是否有其他方式可以做到這一點。

回答

-1

我不確定YT是否通過API暴露artist information。我對這項工作的最佳猜測是擁有不同的藝術家數據庫,然後匹配標題或其他元數據項目以提取藝術家。

您需要一些機制來維護和更新藝術家數據庫並將視頻關聯到該數據庫。

1

您可以隨時通過處理原始的XML上

http://gdata.youtube.com/feeds/api/videos/{$videoId} 
+0

沒有更多可用的提取藝術家 – gordie

相關問題