class ChanCrawlerGem::DownloadManager
Attributes
download_dest[R]
Public Class Methods
new(download_destination)
click to toggle source
# File lib/chanCrawlerGem.rb, line 74 def initialize(download_destination) @download_dest = download_destination end
Public Instance Methods
already_present?(item_name)
click to toggle source
# File lib/chanCrawlerGem.rb, line 99 def already_present?(item_name) name = item_name.slice(15, item_name.length) false unless File.file?("#{download_dest}/#{name}") end
download(resource_url)
click to toggle source
# File lib/chanCrawlerGem.rb, line 91 def download(resource_url) puts "Downloading #{resource_url}" tmpfile = Down.download("http:#{resource_url}") FileUtils.mv(tmpfile.path, "#{download_dest}#{tmpfile .original_filename}") puts 'Downloaded successfully' end
download_thread_contents(urls)
click to toggle source
# File lib/chanCrawlerGem.rb, line 85 def download_thread_contents(urls) urls.each do |url| download(url) if already_present?(url) == false end end
get_thread_contents(thread)
click to toggle source
# File lib/chanCrawlerGem.rb, line 78 def get_thread_contents(thread) # puts "Parsing #{thread} for content" document = Nokogiri::HTML(URI.open(thread)) results = document.css('.board .fileThumb') result_links = results.map { |t| t[:href] } end