Class: Libertree::Embedding::CustomProviders::FreeMusicArchive
- Inherits:
-
Object
- Object
- Libertree::Embedding::CustomProviders::FreeMusicArchive
- Defined in:
- lib/libertree/embedding/custom-providers.rb
Class Method Summary collapse
Class Method Details
.format ⇒ Object
45 46 47 |
# File 'lib/libertree/embedding/custom-providers.rb', line 45 def self.format %r{http://freemusicarchive\.org/music/.+} end |
.get(url) ⇒ Object
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/libertree/embedding/custom-providers.rb', line 49 def self.get(url) return unless url =~ self.format uri = URI.parse(url) Timeout.timeout(10) do Net::HTTP.start(uri.host) do |http| resp = http.get(uri.path) html = Nokogiri::HTML(resp.body) e = html.css('.inp-embed-code input')[0] if e return e.attr('value') else raise Libertree::Embedding::Error, "failed to find embedding code" end end end end |