lib/earth/air/flight_segment/data_miner.rb in earth-0.11.16 vs lib/earth/air/flight_segment/data_miner.rb in earth-0.11.17

- old
+ new

@@ -2,15 +2,15 @@ FlightSegment.class_eval do # For import errata class FlightSegment::Guru def in_may_2009?(row) - row ['MONTH'] == 5 and row['YEAR'] == 2009 + row ['MONTH'].to_i == 5 and row['YEAR'].to_i == 2009 end def in_july_2009?(row) - row ['MONTH'] == 7 and row['YEAR'] == 2009 + row ['MONTH'].to_i == 7 and row['YEAR'].to_i == 2009 end end URL = 'http://www.transtats.bts.gov/DownLoad_Table.asp' FORM_DATA = %{ @@ -184,19 +184,18 @@ data_miner do process "Start from scratch" do delete_all end - - form_data_per_month(2009..::Time.now.year).each do |month, form_data| + FlightSegment.form_data_per_month(2011..2011).each do |month, form_data| + # FlightSegment.form_data_per_month(2009..::Time.now.year).each do |month, form_data| import "T100 flight segment data for #{month.strftime('%B %Y')}", :url => URL, :form_data => form_data, :compression => :zip, :glob => '/*.csv', - # FIXME TODO 6/6/2011 the errata doesn't work - still doesn't fill in missing airline in May and July 2009 - :errata => { :url => 'https://spreadsheets.google.com/spreadsheet/pub?key=0AoQJbWqPrREqdGxpYU1qWFR3d0syTVMyQVVOaDd0V3c&output=csv', :responder => FlightSegment::Guru.new }, - :select => lambda { |record| record['DEPARTURES_PERFORMED'].to_i > 0 } do + :errata => { :url => "file://#{Earth::ERRATA_DIR}/flight_segment/bts_errata.csv", :responder => FlightSegment::Guru.new }, + :select => proc { |record| record['DEPARTURES_PERFORMED'].to_i > 0 } do key 'row_hash' store 'origin_airport_iata_code', :field_name => 'ORIGIN' store 'origin_country_iso_3166_code', :field_name => 'ORIGIN_COUNTRY' store 'destination_airport_iata_code', :field_name => 'DEST' store 'destination_country_iso_3166_code', :field_name => 'DEST_COUNTRY'