Class: Dvla::VehicleDetails::Scraper

Inherits:
Object
  • Object
show all
Defined in:
lib/vehicle_details/scraper.rb

Instance Method Summary collapse

Constructor Details

#initialize(reg, make) ⇒ Scraper

Returns a new instance of Scraper.



7
8
9
10
# File 'lib/vehicle_details/scraper.rb', line 7

def initialize(reg, make)
  @reg = reg
  @make = make
end

Instance Method Details

#scrapeObject



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/vehicle_details/scraper.rb', line 12

def scrape
  c = Capybara::Session.new(:webkit)
  p "Getting page"
  c.visit 'https://www.taxdisc.direct.gov.uk/EvlPortalApp/app/home/intro'

  p 'Clicking Vehicle enquiry'
  c.click_on('Vehicle enquiry')

  p "Clicking Next"
  c.click_on('Next')

  p "Completing form"
  c.fill_in 'vrm', with: @reg
  c.select @make.upcase, from: 'make'
  c.click_on('Submit')

  extractor = DataExtractor.new(c.body)

  {
    car_data: extractor.car_data,
    tax_data: extractor.tax_data
  }
end