Import w/ desc and pics
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
require 'uri'
|
||||
require 'open-uri'
|
||||
namespace :db do
|
||||
desc 'Imports data from MusicBrainz database'
|
||||
task :import => :environment do
|
||||
@@ -5,21 +7,24 @@ namespace :db do
|
||||
ati.each do |name|
|
||||
# Get artist from MB
|
||||
mb_artist = MusicBrainzArtist.getByName(name)
|
||||
# Save artist
|
||||
# # Save artist
|
||||
artist_xml = open('http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&api_key=04fda005dbf61a50af5abc3e90f111f2&artist='+ URI.escape(name)).read
|
||||
artist = Artist.new
|
||||
artist.name = mb_artist.name
|
||||
artist.desc = 'test import desc'
|
||||
artist.pic_url = '/images/dummy.png'
|
||||
artist.desc = artist_xml.scan(/<summary><\!\[CDATA\[?(.*)\]\]><\/summary>/m)[0][0]
|
||||
artist.pic_url = artist_xml.scan(/<image\ssize=\"extralarge\">?(.*)<\/image>/)[0][0]
|
||||
artist.save
|
||||
# Get albums from MB
|
||||
mb_albums = MusicBrainzAlbum.where('artist_id = ? AND release_type = 1', mb_artist.id).order('year ASC, id ASC')
|
||||
mb_albums.each do |mb_album|
|
||||
# Saving album
|
||||
album_xml = open('http://ws.audioscrobbler.com/2.0/?method=album.getinfo&api_key=04fda005dbf61a50af5abc3e90f111f2&artist='+ URI.escape(name) +'&album='+ URI.escape(mb_album.name)).read
|
||||
album = Album.new
|
||||
album.name = mb_album.name
|
||||
album.year = mb_album.year
|
||||
album.artist_id = artist.id
|
||||
album.status = 1
|
||||
album.pic_url = '/images/dummy.png'
|
||||
album.pic_url = album_xml.scan(/<image\ssize=\"extralarge\">?(.*)<\/image>/)[0][0]
|
||||
album.save
|
||||
# Get album releases from MB
|
||||
mb_releases = MusicBrainzRelease.where('album_id = ? AND release_type = 1', mb_album.id).order('date ASC, id ASC')
|
||||
|
||||
Reference in New Issue
Block a user