class Syfyfancam::URL
Attributes
uri[R]
Public Class Methods
new(url)
click to toggle source
# File lib/syfyfancam/url.rb, line 11 def initialize(url) @uri = URI.parse(url) raise ArgumentError, ERROR_URL unless personal_hash? rescue URI::InvalidURIError => e raise e, ERROR_URL end
Public Instance Methods
images()
click to toggle source
# File lib/syfyfancam/url.rb, line 18 def images build_urls.map { |url| URI.parse(url).to_s } end
personal_hash()
click to toggle source
# File lib/syfyfancam/url.rb, line 22 def personal_hash uri.to_s.split('/').last end
Private Instance Methods
base_url()
click to toggle source
# File lib/syfyfancam/url.rb, line 36 def base_url @base_url ||= Nokogiri::HTML(Net::HTTP.get(uri)).at('meta[property="og:image"]')['content'][0..-8] end
build_urls()
click to toggle source
# File lib/syfyfancam/url.rb, line 32 def build_urls (1..100).map { |i| "#{base_url}#{format('%<filenumber>03d', filenumber: i)}.jpg" } end
personal_hash?()
click to toggle source
# File lib/syfyfancam/url.rb, line 28 def personal_hash? personal_hash && personal_hash.size == 12 end