class SJCBusSchedule::Parser::Schedules
Public Class Methods
new(doc:)
click to toggle source
# File lib/sjc_bus_schedule/parser/parser.rb, line 33 def initialize(doc:) @doc = doc end
Public Instance Methods
references()
click to toggle source
# File lib/sjc_bus_schedule/parser/parser.rb, line 43 def references @references ||= @doc.css("span[id*=Resultado] .textosm").children.map(&:text).reject { |it| it.empty? } end
schedules()
click to toggle source
# File lib/sjc_bus_schedule/parser/parser.rb, line 37 def schedules @schedules ||= @doc.css("span[id*=Resultado] > table").map do |schedule| { period: period(schedule), hours: hours(schedule) } end end
Private Instance Methods
hours(schedule)
click to toggle source
# File lib/sjc_bus_schedule/parser/parser.rb, line 53 def hours(schedule) schedule.css("table tr:nth-of-type(n+4) td").map(&:text).reject { |it| it.empty? } end
period(schedule)
click to toggle source
# File lib/sjc_bus_schedule/parser/parser.rb, line 49 def period(schedule) schedule.css("table tr:first-of-type td").first.text.strip end