Class: Libertree::Embedding::CustomProviders::Jamendo
- Inherits:
-
Object
- Object
- Libertree::Embedding::CustomProviders::Jamendo
- Defined in:
- lib/libertree/embedding/custom-providers.rb
Class Method Summary collapse
Class Method Details
.format ⇒ Object
69 70 71 |
# File 'lib/libertree/embedding/custom-providers.rb', line 69 def self.format %r{http://www.jamendo\.com/.+/track/.+} end |
.get(url) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 |
# File 'lib/libertree/embedding/custom-providers.rb', line 73 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('.preview object')[0] if e return e.to_html else raise Libertree::Embedding::Error, "failed to find embedding code" end end end end |