2012-02-04 26 views
1

我已經在定位好的鐵軌3.1兼容M3U解析器解析,用戶可以上傳一個播放列表收效甚微。我想知道如果有人知道一個體面的解析器m3u文件。否則,如果每個人都知道有一個服務和API了最新的歌手和歌曲信息,這將有助於很多。謝謝。尋找音樂庫API或滑軌3.1兼容M3U分析器

回答

0

或者我可以讓用戶播放列表導出爲XML(XSPF),並分析其與引入nokogiri像這樣。

播放列表控制器

def create 
    @playlist = current_show.playlists.create(params[:playlist]) 
    @playlist.process 

    ... 
    end 

playlist.rb模型

def process 
    doc = Nokogiri::XML(open("#{self.m3u.path}")) 
    tracks = doc.search('track') 
    tracks.each do |track| 
     a = Artist.find_by_name(track.search('creator').text.downcase) 
     if a 
    self.songs.create(:artist_id => a.id, :title => track.search('title').text) 
     else 
    a = self.artists.create(:name => track.search('creator').text) 
    self.songs.create(:artist_id => a.id, :title => track.search('title').text) 
     end 
    end 
    end 

當然,這是一個小但髒功能。希望xspf導出的播放列表標籤對大多數mp3軟件命名相同。

如果有人知道的歌曲好的庫/藝術家請讓我知道。