Class: Anstaendig::ZdfAgent
- Inherits:
-
AbstractAgent
- Object
- AbstractAgent
- Anstaendig::ZdfAgent
- Defined in:
- lib/anstaendig/agents/zdf.rb
Overview
Agent for anstaendig to download videos from the ZDF media center.
Instance Attribute Summary
Attributes inherited from AbstractAgent
Instance Method Summary collapse
-
#initialize(uri, quality) ⇒ ZdfAgent
constructor
A new instance of ZdfAgent.
Methods inherited from AbstractAgent
#recode, #rip, #run, #userAgent
Constructor Details
#initialize(uri, quality) ⇒ ZdfAgent
Returns a new instance of ZdfAgent.
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/anstaendig/agents/zdf.rb', line 6 def initialize( uri, quality ) require( 'nokogiri' ) require( 'open-uri' ) uri = uri.to_s if( uri =~ /hauptnavigation\/startseite\/#/ ) uri.gsub!( 'hauptnavigation/startseite/#/', '' ) end doc = Nokogiri::HTML( open( uri ) ) quality = case( quality ) when :high, :default '/veryhigh/' when :medium, :low '/300/' else raise( NoSuchQualityException ) end doc.xpath( '//a[@class="play"]' ).each do |temp| temp = temp.attribute( 'href' ).to_s if( temp.include?( quality ) and temp.include?( '.asx' ) ) uri = temp end end @filename = doc.xpath( '//h1[@class="beitragHeadline"]' ).inner_text + '.wmv' doc = Nokogiri::HTML( open( uri ) ) @url = doc.to_s.match( /(mms.*wmv)/ )[0] end |