dvla 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 9b7f4eb0e8f75863262ba2fc4d80e4d72aa013c5
4
+ data.tar.gz: 8ff8be2fb4042d5f481ebacd9372947092014af4
5
+ SHA512:
6
+ metadata.gz: a37e9645ae9380ea7a38ddd60c3edceb2cd819f6db26aaaebf7920ccb7821c2ad12330167b9391a716e21fa55342552a4b035b933d738e3287ae82405334a20a
7
+ data.tar.gz: fdbe75925b61065c17932e75213125d375cabe8d1c8bfefa1833050f030be82a3228ce0996562c3bde46d8f6859ed70915eae3d00a27dc9967df6c2c975970d1
@@ -0,0 +1,19 @@
1
+ *.swp
2
+ *.swo
3
+ *.gem
4
+ *.rbc
5
+ .bundle
6
+ .config
7
+ .yardoc
8
+ Gemfile.lock
9
+ InstalledFiles
10
+ _yardoc
11
+ coverage
12
+ doc/
13
+ lib/bundler/man
14
+ pkg
15
+ rdoc
16
+ spec/reports
17
+ test/tmp
18
+ test/version_tmp
19
+ tmp
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem 'capybara-webkit'
4
+ gem 'rspec'
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2013 Jeremy Walker
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,61 @@
1
+ # DVLA Data Extractor
2
+
3
+ This gem allows you to extract data from the DVLA. It currently supports:
4
+ - Vehicle Details
5
+
6
+ ## Installation
7
+
8
+ Add this line to your application's Gemfile:
9
+
10
+ gem 'dvla'
11
+
12
+ And then execute:
13
+
14
+ $ bundle
15
+
16
+ Or install it yourself as:
17
+
18
+ $ gem install dvla
19
+
20
+ ## Usage
21
+
22
+ ### Vehicle Details
23
+ ```ruby
24
+ Dvla::VehicleDetails.retrieve("SP04 UYK", "Mazda")
25
+ ```
26
+
27
+ This should return
28
+ ```json
29
+ {
30
+ car_data: {
31
+ "Date of Liability"=>"01 11 2013",
32
+ "Date of First Registration"=>"16 03 2004",
33
+ "Year of Manufacture"=>"2004",
34
+ "Cylinder Capacity (cc)"=>"2616cc",
35
+ "Emissions"=>"284g/Km",
36
+ "Fuel Type"=>"PETROL",
37
+ "Export Marker"=>"N",
38
+ "Vehicle Status"=>"Licence Not Due",
39
+ "Vehicle Colour"=>"YELLOW",
40
+ "Vehicle Type Approval"=>"M1"
41
+ },
42
+ tax_data: {
43
+ "6 Months Rate"=>"£154.00",
44
+ "12 Months Rate"=>"£280.00"
45
+ }
46
+ }
47
+ ```
48
+
49
+ ## Contributing
50
+
51
+ Contributions are very welcome. To contribute:
52
+
53
+ 1. Fork it
54
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
55
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
56
+ 4. Push to the branch (`git push origin my-new-feature`)
57
+ 5. Create new Pull Request
58
+
59
+ ## Copyright
60
+
61
+ Copyright (c) 2013 Jeremy Walker.
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
@@ -0,0 +1,23 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "dvla"
8
+ spec.version = Dvla::VERSION
9
+ spec.authors = ["Jeremy Walker"]
10
+ spec.email = ["jez.walker@gmail.com"]
11
+ spec.description = %q{A scraper to extract data from the DVLA}
12
+ spec.summary = %q{A scraper to extract data from the DVLA}
13
+ spec.homepage = "https://github.com/iHiD/dvla"
14
+ spec.license = "MIT"
15
+
16
+ spec.files = `git ls-files`.split($/)
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(spec)/})
19
+ spec.require_paths = ["lib"]
20
+
21
+ spec.add_development_dependency "bundler", "~> 1.3"
22
+ spec.add_development_dependency "rake"
23
+ end
@@ -0,0 +1,6 @@
1
+ require "dvla/version"
2
+ require "dvla/vehicle_details"
3
+
4
+ module Dvla
5
+ # Your code goes here...
6
+ end
@@ -0,0 +1,12 @@
1
+ require 'vehicle_details/data_extractor'
2
+ require 'vehicle_details/scraper'
3
+
4
+ module Dvla
5
+ module VehicleDetails
6
+ class << self
7
+ def retrieve(reg, make)
8
+ Scraper.new(reg, make).scrape
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,66 @@
1
+ # encoding: UTF-8
2
+ require 'nokogiri'
3
+
4
+ module Dvla
5
+ module VehicleDetails
6
+ class DataExtractor
7
+ def initialize(html)
8
+ @html = html
9
+ end
10
+
11
+ def car_data
12
+ data = {}
13
+ car_table.css(".vehicledetailstableright .bodytext").each_with_index do |elem, i|
14
+ data[car_data_titles[i]] = elem.text
15
+ end
16
+ data
17
+ end
18
+
19
+ def tax_data
20
+ data = {}
21
+ tax_table.css(".vehicledetailstableright .bodytext").each_with_index do |elem, i|
22
+ data[tax_data_titles[i]] = elem.text
23
+ end
24
+ data
25
+ end
26
+
27
+ private
28
+
29
+ def doc
30
+ @doc ||= Nokogiri::HTML(@html)
31
+ end
32
+
33
+ def tables
34
+ @tables ||= doc.css("table")
35
+ end
36
+
37
+ def car_table
38
+ @car_table ||= tables[0]
39
+ end
40
+
41
+ def tax_table
42
+ @tax_table ||= tables[1]
43
+ end
44
+
45
+ def car_data_titles
46
+ ["Date of Liability",
47
+ "Date of First Registration",
48
+ "Year of Manufacture",
49
+ "Cylinder Capacity (cc)",
50
+ "Emissions",
51
+ "Fuel Type",
52
+ "Export Marker",
53
+ "Vehicle Status",
54
+ "Vehicle Colour",
55
+ "Vehicle Type Approval",
56
+ "Vehicle Excise Duty rate for vehicle 6 Months Rate",
57
+ "12 Months Rate"
58
+ ]
59
+ end
60
+
61
+ def tax_data_titles
62
+ ["6 Months Rate", "12 Months Rate"]
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,37 @@
1
+ require 'capybara-webkit'
2
+ require_relative 'data_extractor'
3
+
4
+ module Dvla
5
+ module VehicleDetails
6
+ class Scraper
7
+ def initialize(reg, make)
8
+ @reg = reg
9
+ @make = make
10
+ end
11
+
12
+ def scrape
13
+ c = Capybara::Session.new(:webkit)
14
+ p "Getting page"
15
+ c.visit 'https://www.taxdisc.direct.gov.uk/EvlPortalApp/app/home/intro'
16
+
17
+ p 'Clicking Vehicle enquiry'
18
+ c.click_on('Vehicle enquiry')
19
+
20
+ p "Clicking Next"
21
+ c.click_on('Next')
22
+
23
+ p "Completing form"
24
+ c.fill_in 'vrm', with: @reg
25
+ c.select @make.upcase, from: 'make'
26
+ c.click_on('Submit')
27
+
28
+ extractor = DataExtractor.new(c.body)
29
+
30
+ {
31
+ car_data: extractor.car_data,
32
+ tax_data: extractor.tax_data
33
+ }
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,3 @@
1
+ module Dvla
2
+ VERSION = "0.1.0"
3
+ end
@@ -0,0 +1,2 @@
1
+ require_relative 'lib/scraper'
2
+ data = DVLAScraper::DetailsScraper.new("SP04 UYK", "MAZDA").scrape
@@ -0,0 +1,39 @@
1
+ # encoding: UTF-8
2
+ require 'rspec'
3
+ require_relative '../../lib/vehicle_details/data_extractor'
4
+
5
+ module Dvla::VehicleDetails
6
+ describe DataExtractor do
7
+
8
+ before :each do
9
+ html = <<-EOSHTML
10
+ <!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"><html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"en\"><head>\n <link rel=\"stylesheet\" type=\"text/css\" href=\"/EvlPortalApp/framework/styles/style_nonav.css\">\n <link rel=\"stylesheet\" type=\"text/css\" href=\"/EvlPortalApp/framework/styles/main.css\">\n <link rel=\"stylesheet\" type=\"text/css\" href=\"/EvlPortalApp/framework/skins/directgov/styles/skin.css\">\n <script src=\"/EvlPortalApp/framework/script/evl.js\" type=\"text/javascript\" language=\"JavaScript\"></script>\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\n \n <meta name=\"robots\" content=\"noindex,nofollow\">\n\t\t<title>DVLA's Vehicle online service. | Vehicle enquiry\n\t\t</title>\n </head>\n <body>\n <div id=\"template\">\n <div id=\"min-width-container\">\n <div id=\"container-page\">\n \n <div id=\"container-head\">\n <div id=\"banner\">\n <div id=\"bannerLeft\"></div>\n <div id=\"bannerMiddle\">\n <img id=\"bannerImageLogo\" src=\"/EvlPortalApp/framework/skins/directgov/images/logo.gif\" alt=\"Directgov\"><div id=\"printBannerImageLogo\">\n <img src=\"/EvlPortalApp/framework/skins/directgov/images/printlogo.gif\" alt=\"Directgov\"></div><span class=\"bannerText\">Public services all in one place</span>\n </div> \n <div id=\"bannerRight\"></div> \n \n <div id=\"skip\">\n <ul>\n <li><a class=\"access\" href=\"#pageTitle\" tabindex=\"1\"><span class=\"menuBarItem\">Skip to content</span></a></li>\n </ul>\n </div>\n </div>\n </div>\n \n \n <div id=\"menuBar\">\n <div id=\"menuBarLeft\">\n </div>\n <div id=\"menuBarRight\">\n <span class=\"menubarimage\"><img src=\"/EvlPortalApp/framework/images/common/dvla_logo.gif\" alt=\"\">\n </span><span class=\"menubartext\">Services provided by DVLA:</span>\n </div>\n </div>\n \n <div id=\"container-content\">\n \n <div id=\"main\">\n\t\t\t<div id=\"pageTitle\">\n\t\t\t<h1>Vehicle enquiry</h1>\n\t\t\t</div>\n\t\t\t<div class=\"textparagraph\"><span class=\"subtitle\">The enquiry is complete.</span><span class=\"subtitleinline\">The vehicle details for </span><span class=\"subtitleinline\">SP04 UYK</span> <span class=\"subtitleinline\">are:</span></div>\n\t\t\t<table>\n\t\t\t\t<tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">Date of Liability</span></td>\n\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span class=\"bodytext\">01 11 2013</span></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">Date of First Registration</span></td>\n\t\t\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span class=\"bodytext\">16 03 2004</span></td>\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">Year of Manufacture</span></td>\n\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span class=\"bodytext\">2004</span></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">Cylinder Capacity (cc)</span></td>\n\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span class=\"bodytext\">2616cc</span></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">CO2 Emissions</span></td>\n\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span class=\"bodytext\">284g/Km</span></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">Fuel Type</span></td>\n\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span id=\"fueltype\" class=\"bodytext\">PETROL</span></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">Export Marker</span></td>\n\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span id=\"exportmarker\" class=\"bodytext\">N</span></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">Vehicle Status</span></td>\n\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span id=\"vehiclelicencestatus\" class=\"bodytext\">Licence Not Due</span></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">Vehicle Colour</span></td>\n\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span id=\"colour\" class=\"bodytext\">YELLOW</span></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">Vehicle Type Approval</span></td>\n\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span class=\"bodytext\">M1</span></td>\n\t\t\t\t\t</tr>\n\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t\t\t<table>\n\t\t\t\t\t\t\t<thead>\n\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t<td colspan=\"2\"><span class=\"bodytextbold\">Vehicle Excise Duty rate for vehicle</span></td>\n\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t</thead>\n\t\t\t\t\t\t\t<tbody>\n\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">6 Months Rate</span></td>\n\t\t\t\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span class=\"bodytext\">£154.00</span></td>\n\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t<td class=\"vehicledetailstableleft\"><span class=\"bodytextbold\">12 Months Rate</span></td>\n\t\t\t\t\t\t\t\t\t<td class=\"vehicledetailstableright\"><span class=\"bodytext\">£280.00</span></td>\n\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t</tbody>\n\t\t\t\t</table>\n\t\t\t<div class=\"textparagraph\"><span class=\"blockbodytext\">Please be aware that if the vehicle has recently been relicensed or a SORN declared, these details may not yet be updated on the vehicle record.</span></div>\n\t\t\t<div class=\"textparagraph\"><span class=\"blockbodytext\">If you think that the details on the vehicle record are incorrect please write to:</span><span class=\"blockbodytext\">VCS</span><span class=\"blockbodytext\">DVLA</span><span class=\"blockbodytext\">Swansea</span><span class=\"blockbodytext\">SA99 1BA</span><span class=\"blockbodytext\">Please include the incorrect V5C Registration Certificate for amendment.</span></div>\n\t\t\t<div class=\"blockbodytext\">To make another enquiry go to\n\t\t\t<a href=\"/EvlPortalApp/app/enquiry?execution=e1s3&amp;_eventId=enquiry\" title=\"Vehicle Enquiry\">Vehicle Enquiry</a>\n\t\t\t</div>\n\t\t\t<div id=\"finishButton\">\n\t\t\t <div class=\"masterassoc\">\n\t\t\t <a href=\"/EvlPortalApp/app/enquiry?execution=e1s3&amp;_eventId=finish\" title=\"Finish\"> <img master=\"true\" src=\"/EvlPortalApp/framework/images/en/buttons/finish.gif\" alt=\"Finish\" hsrc=\"/EvlPortalApp/framework/images/en/buttons/finish_rollover.gif\"></a>\n\t\t\t </div>\n\t\t\t</div>\n </div>\n </div>\n <div class=\"footerSpacer\">\n </div>\n </div>\n </div>\n </div>\n \n \n <div id=\"footerWrapper\">\n <div id=\"footer\">\n <div id=\"footerContainer\">\n <div id=\"footerBarRight\"><span class=\"menuBarItem\">Site Last Updated: 22/01/2013</span>\n </div>\n </div>\n </div>\n </div>\n \n</body></html>
11
+ EOSHTML
12
+ @extractor = DataExtractor.new(html)
13
+ end
14
+
15
+ it "should have a doc" do
16
+ @extractor.send(:doc).should be_a Nokogiri::HTML::Document
17
+ end
18
+
19
+ it "should extract tables" do
20
+ @extractor.send(:tables).length.should == 2
21
+ end
22
+
23
+ it "should extract car_table" do
24
+ @extractor.send(:car_table).should be_a Nokogiri::XML::Element
25
+ end
26
+
27
+ it "should extract from car data" do
28
+ @extractor.car_data.should == {"Date of Liability"=>"01 11 2013", "Date of First Registration"=>"16 03 2004", "Year of Manufacture"=>"2004", "Cylinder Capacity (cc)"=>"2616cc", "Emissions"=>"284g/Km", "Fuel Type"=>"PETROL", "Export Marker"=>"N", "Vehicle Status"=>"Licence Not Due", "Vehicle Colour"=>"YELLOW", "Vehicle Type Approval"=>"M1"}
29
+ end
30
+
31
+ it "should extract tax_table" do
32
+ @extractor.send(:tax_table).should be_a Nokogiri::XML::Element
33
+ end
34
+
35
+ it "should extract tax data" do
36
+ @extractor.tax_data.should == {"6 Months Rate"=>"£154.00", "12 Months Rate"=>"£280.00"}
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,15 @@
1
+ # encoding: UTF-8
2
+ require 'rspec'
3
+ require_relative '../../lib/vehicle_details/scraper'
4
+
5
+ module Dvla::VehicleDetails
6
+ describe Scraper do
7
+ it "should return correct data" do
8
+ data = Scraper.new("SP04 UYK", "MAZDA").scrape
9
+ data.should == {
10
+ car_data: {"Date of Liability"=>"01 11 2013", "Date of First Registration"=>"16 03 2004", "Year of Manufacture"=>"2004", "Cylinder Capacity (cc)"=>"2616cc", "Emissions"=>"284g/Km", "Fuel Type"=>"PETROL", "Export Marker"=>"N", "Vehicle Status"=>"Licence Not Due", "Vehicle Colour"=>"YELLOW", "Vehicle Type Approval"=>"M1"},
11
+ tax_data: {"6 Months Rate"=>"£154.00", "12 Months Rate"=>"£280.00"}
12
+ }
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,14 @@
1
+ # encoding: UTF-8
2
+ require 'rspec'
3
+ require_relative '../lib/vehicle_details'
4
+
5
+ module Dvla
6
+ describe VehicleDetails do
7
+ it "should retrieve data" do
8
+ VehicleDetails.retrieve("SP04 UYK", "MAZDA").should == {
9
+ car_data: {"Date of Liability"=>"01 11 2013", "Date of First Registration"=>"16 03 2004", "Year of Manufacture"=>"2004", "Cylinder Capacity (cc)"=>"2616cc", "Emissions"=>"284g/Km", "Fuel Type"=>"PETROL", "Export Marker"=>"N", "Vehicle Status"=>"Licence Not Due", "Vehicle Colour"=>"YELLOW", "Vehicle Type Approval"=>"M1"},
10
+ tax_data: {"6 Months Rate"=>"£154.00", "12 Months Rate"=>"£280.00"}
11
+ }
12
+ end
13
+ end
14
+ end
metadata ADDED
@@ -0,0 +1,91 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: dvla
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Jeremy Walker
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-05-19 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: A scraper to extract data from the DVLA
42
+ email:
43
+ - jez.walker@gmail.com
44
+ executables: []
45
+ extensions: []
46
+ extra_rdoc_files: []
47
+ files:
48
+ - .gitignore
49
+ - Gemfile
50
+ - Gemfile.lock
51
+ - LICENSE.txt
52
+ - README.md
53
+ - Rakefile
54
+ - dvla.gemspec
55
+ - lib/dvla.rb
56
+ - lib/vehicle_details.rb
57
+ - lib/vehicle_details/data_extractor.rb
58
+ - lib/vehicle_details/scraper.rb
59
+ - lib/version.rb
60
+ - scrape.rb
61
+ - spec/vehicle_details/data_extractor_spec.rb
62
+ - spec/vehicle_details/vehicle_details_scraper_spec.rb
63
+ - spec/vehicle_details_spec.rb
64
+ homepage: https://github.com/iHiD/dvla
65
+ licenses:
66
+ - MIT
67
+ metadata: {}
68
+ post_install_message:
69
+ rdoc_options: []
70
+ require_paths:
71
+ - lib
72
+ required_ruby_version: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ required_rubygems_version: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - '>='
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ requirements: []
83
+ rubyforge_project:
84
+ rubygems_version: 2.0.0
85
+ signing_key:
86
+ specification_version: 4
87
+ summary: A scraper to extract data from the DVLA
88
+ test_files:
89
+ - spec/vehicle_details/data_extractor_spec.rb
90
+ - spec/vehicle_details/vehicle_details_scraper_spec.rb
91
+ - spec/vehicle_details_spec.rb