class Acme::Smileage::Discography::LyricsDownloader
Public Instance Methods
get(lyric_links, site=nil)
click to toggle source
# File lib/acme/smileage/discography/lyrics_downloader.rb, line 8 def get(lyric_links, site=nil) return nil unless lyric_links case site when :utanet get_utanet(lyric_links[:utanet]) when :utamap get_utamap(lyric_links[:utamap]) when nil get(lyric_links, :utanet) or get(lyric_links, :utamap) else raise ArgumentError, "Invalid site: #{site}" end end
Private Instance Methods
get_utamap(uri)
click to toggle source
# File lib/acme/smileage/discography/lyrics_downloader.rb, line 36 def get_utamap(uri) return nil if not uri or not uri =~ /\?surl=([a-zA-Z0-9-]+)/ id = $1 r = http_get(uri, "/phpflash/flashfalsephp.php?unum=#{id}") r.force_encoding("utf-8") r.sub(/^.*?test2=/, "").strip end
get_utanet(uri)
click to toggle source
# File lib/acme/smileage/discography/lyrics_downloader.rb, line 25 def get_utanet(uri) return nil if not uri or not uri =~ /\/song\/(\d+)/ id = $1 r = http_get(uri, "/user/phplib/swf/showkasi.php?ID=#{id}") r = r[(10 + 16 * 4) - 1, r.length - (10 + 16 * 4) - 13] r.force_encoding("utf-8") r.sub!(/\A\0\n/, "") r.strip end