Class: Karaoke::Song::MetroLyrics
- Inherits:
-
Base
- Object
- Base
- Karaoke::Song::MetroLyrics
show all
- Defined in:
- lib/karaoke/song/metro_lyrics.rb
Instance Attribute Summary
Attributes inherited from Base
#lyrics_url
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Base
#initialize
Class Method Details
.matches?(lyrics_url) ⇒ Boolean
6
7
8
9
10
|
# File 'lib/karaoke/song/metro_lyrics.rb', line 6
def self.matches?(lyrics_url)
uri = URI.parse(lyrics_url)
uri.host.end_with?("metrolyrics.com") && !uri.path.end_with?("-lyrics.html")
end
|
Instance Method Details
#artist ⇒ Object
12
13
14
|
# File 'lib/karaoke/song/metro_lyrics.rb', line 12
def artist
@artist ||= tracking_data["musicArtistName"]
end
|
#lyrics ⇒ Object
20
21
22
23
24
25
26
27
28
29
30
31
|
# File 'lib/karaoke/song/metro_lyrics.rb', line 20
def lyrics
return @lyrics if defined?(@lyrics)
el = document.css("#lyrics-body-text").first
return @lyrics = nil unless el
lyrics = clean_html(el.inner_html)
lyrics.gsub!("</p><p class=\"verse\">", "\n\n")
lyrics.gsub!("<p class=\"verse\">", "")
lyrics.gsub!("</p>", "")
@lyrics = lyrics
end
|
#title ⇒ Object
16
17
18
|
# File 'lib/karaoke/song/metro_lyrics.rb', line 16
def title
@title ||= tracking_data["musicSongTitle"]
end
|