Я новичок в ruby и на этом сайте, поэтому, пожалуйста, потерпите меня!Я бесконечно гуглил безрезультатно.
Я пытаюсь передать объект college
в мой метод класса scrape_college_info
, который я создал в предыдущем методе класса scrape_illinois_index_page
, чтобы я мог очиститьСледующий уровень информации для конкретного колледжа пользователь выбирает с помощью Pry и Nokogiri.К сожалению, я продолжаю получать ошибку аргумента.
Я знаю, что это не самая красивая, но это мой код прямо сейчас:
class College
attr_accessor :name, :location, :size, :type, :url
BASE_PATH = "https://www.collegesimply.com/colleges/illinois/"
def self.college
self.scrape_colleges
end
def self.scrape_colleges
colleges = self.scrape_illinois_index_page
colleges
end
def self.scrape_illinois_index_page
doc = Nokogiri::HTML(open(BASE_PATH))
# binding.pry
colleges = []
doc.xpath("//tr").each do |doc|
college = self.new
if doc.css("td")[0] != nil
college.name = doc.css("td")[0].text.strip
end
if doc.css("td")[1] != nil
college.location = doc.css("td")[1].text.strip
end
if doc.css('table.table tbody tr td:nth-child(1) a')[0] != nil
college.link = doc.css('table.table tbody tr td:nth-child(1) a')[0]['href']
end
colleges << college
end
colleges
end
def self.scrape_college_info(college)
doc = Nokogiri::HTML(open(BASE_PATH + "#{college.link}"))
end
end