Class: KickstarterFinder

Inherits:
BaseFinder show all
Defined in:
lib/kickstarter_finder.rb

Instance Method Summary collapse

Methods inherited from BaseFinder

#days_to_go, #precentage, #reload, #set, #to_json

Methods included from AbstractInterface

included

Instance Method Details

#deadlineObject

Override



56
57
58
59
60
# File 'lib/kickstarter_finder.rb', line 56

def deadline
 Time.parse(@body.css('.ksr_page_timer')[0]["data-end_time"])
 rescue => e
    ""
end

#goalObject



35
36
37
38
39
# File 'lib/kickstarter_finder.rb', line 35

def goal
  @body.css('.stat-item')[1].css('.money').text
  rescue => e
    ""
end

#num_of_backersObject



17
18
19
20
21
# File 'lib/kickstarter_finder.rb', line 17

def num_of_backers
  @body.css('div#backers_count').text.to_i
  rescue => e
    ""
end

#picture_urlObject



41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/kickstarter_finder.rb', line 41

def picture_url
  # urls
  base = @url.split('&')[0].split('?')[0]
  new_url = "#{base}/description"
  # scrape again
  source = open(new_url, :allow_redirections => :safe){|f|f.read}
  page = Nokogiri::HTML(source)
  # lookup
  page.css('.video-player').css('img')[0]['src']
  rescue => e
    ""
end

#pledgedObject



29
30
31
32
33
# File 'lib/kickstarter_finder.rb', line 29

def pledged
  @body.css('.stat-item')[1].css('data').text
  rescue => e
    ""
end

#project_nameObject



11
12
13
14
15
# File 'lib/kickstarter_finder.rb', line 11

def project_name
  @body.css('title')[0].text
  rescue => e
    ""
end

#test_printObject



5
6
7
8
9
# File 'lib/kickstarter_finder.rb', line 5

def test_print
  "I'm #{self.class.name} and my url is #{@url}"
  rescue => e
    ""
end


23
24
25
26
27
# File 'lib/kickstarter_finder.rb', line 23

def twitter_link
  @body.css('.js-twitter-share')[0]['href']
  rescue => e
    ""
end