Class: SpBus::Scrapers::RouteDetails

Inherits:
Object
  • Object
show all
Defined in:
lib/spbus/scrapers/route_details.rb

Constant Summary collapse

URL =
"http://olhovivo.sptrans.com.br/v0/Linha/Buscar"

Instance Method Summary collapse

Constructor Details

#initialize(route) ⇒ RouteDetails

Returns a new instance of RouteDetails.



6
7
8
# File 'lib/spbus/scrapers/route_details.rb', line 6

def initialize(route)
  @route = route
end

Instance Method Details

#fetchObject



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/spbus/scrapers/route_details.rb', line 10

def fetch
  doc = SpBus::Request.new(url_with_params).get
  @json = JSON.parse(doc, symbolize_names: true)

  validate_response
  build_route

  true
rescue OpenURI::HTTPError => e
  if e.io && e.io.status.first.to_i == 500
    raise SpBus::InvalidRoute
  else
    raise e
  end
end