class MeetupScraper::CliMethods
Public Instance Methods
create_events_from_hashes(event_hashes)
click to toggle source
create event instances
# File lib/meetup_scraper/cli_methods.rb, line 24 def create_events_from_hashes(event_hashes) MeetupScraper::Event.create_from_collection(event_hashes) end
fetch_event_details(url)
click to toggle source
download the event's details
# File lib/meetup_scraper/cli_methods.rb, line 29 def fetch_event_details(url) MeetupScraper::Scraper.fetch_event_details(url) end
get_user_input()
click to toggle source
capture user input returning search url
# File lib/meetup_scraper/cli_methods.rb, line 4 def get_user_input puts 'Search Meetup.com for events in your local area' puts 'Enter the meetup subject' subject = gets.chomp puts 'Enter your town' town = gets.chomp puts 'How many miles from your town are you willing to travel' miles = gets.chomp.to_i miles = 1 if miles == 0 base_url = 'https://www.meetup.com/find/events/?allMeetups=false&keywords=' "#{base_url}#{subject}&radius=#{miles}&userFreeForm=#{town}" end
pick_meetup_event()
click to toggle source
# File lib/meetup_scraper/cli_methods.rb, line 46 def pick_meetup_event puts 'Enter the number of the event to view more details' puts "Enter '0' to search again" puts "To quit, enter 'exit'" puts 'What would you like to do?' gets.chomp end
print_event(event)
click to toggle source
print event detatils
# File lib/meetup_scraper/cli_methods.rb, line 34 def print_event(event) puts '------------------------------' puts "Title: #{event.title}" puts "Organiser: #{event.organiser}" puts "Date: #{event.date}" puts "Time: #{event.time}" puts "Number attending: #{event.num_attending}" puts "Address: #{event.address}" puts "Description: #{event.description}" puts '------------------------------' end
print_events()
click to toggle source
# File lib/meetup_scraper/cli_methods.rb, line 54 def print_events MeetupScraper::Event.all.each_with_index do |event, i| puts "------------------------------" puts "#{i + 1}. #{event.title}" puts "Organiser: #{event.organiser}" puts "Date: #{event.date.slice(0, 10)}" puts "Time: #{event.time}" puts "Number attending: #{event.num_attending}" puts "Url: #{event.url}" puts "------------------------------" end end
search_meetup(url)
click to toggle source
fetch the meetup events
# File lib/meetup_scraper/cli_methods.rb, line 19 def search_meetup(url) MeetupScraper::Scraper.fetch_meetup_list(url) end