Class: Landmarks::Scraper
- Inherits:
-
Object
- Object
- Landmarks::Scraper
- Defined in:
- lib/landmarks/scraper.rb
Instance Method Summary collapse
- #get_landmark_page(url) ⇒ Object
- #get_page ⇒ Object
- #print_landmarks_index ⇒ Object
- #print_landmarks_urls ⇒ Object
- #print_the_title ⇒ Object
- #scrape_landmark_description(url) ⇒ Object
- #scrape_landmark_directions(url) ⇒ Object
- #scrape_landmark_name(url) ⇒ Object
- #scrape_landmarks_index ⇒ Object
Instance Method Details
#get_landmark_page(url) ⇒ Object
37 38 39 |
# File 'lib/landmarks/scraper.rb', line 37 def get_landmark_page(url) Nokogiri::HTML(open(url)) end |
#get_page ⇒ Object
7 8 9 |
# File 'lib/landmarks/scraper.rb', line 7 def get_page Nokogiri::HTML(open("http://www.saint-petersburg.com/top-20-attractions/")) end |
#print_landmarks_index ⇒ Object
20 21 22 23 24 25 26 27 28 29 |
# File 'lib/landmarks/scraper.rb', line 20 def print_landmarks_index Landmarks::Landmark.all.each.with_index do |el, index| if el.name.include?("\r\n") puts "#{index+1}. #{el.name}".gsub("\r\n", "") else puts "#{index+1}.\t#{el.name}" end end nil end |
#print_landmarks_urls ⇒ Object
31 32 33 34 |
# File 'lib/landmarks/scraper.rb', line 31 def print_landmarks_urls Landmarks::Landmark.all.each.with_index { |el, index| puts "#{index+1}.\t#{el.url}" } nil end |
#print_the_title ⇒ Object
16 17 18 |
# File 'lib/landmarks/scraper.rb', line 16 def print_the_title puts self.get_page.css("h1").text end |
#scrape_landmark_description(url) ⇒ Object
45 46 47 |
# File 'lib/landmarks/scraper.rb', line 45 def scrape_landmark_description(url) self.get_landmark_page(url).css("p").text end |
#scrape_landmark_directions(url) ⇒ Object
49 50 51 |
# File 'lib/landmarks/scraper.rb', line 49 def scrape_landmark_directions(url) self.get_landmark_page(url).css(".prop-list").text end |
#scrape_landmark_name(url) ⇒ Object
41 42 43 |
# File 'lib/landmarks/scraper.rb', line 41 def scrape_landmark_name(url) self.get_landmark_page(url).css("h1").text end |