Sha256: 24960c79dee972fd603a217e3db2f5f38bf587e43abbc16552746517fd891cd0

Contents?: true

Size: 1.65 KB

Versions: 4

Compression:

Stored size: 1.65 KB

Contents

=remote_table

Open local or remote XLSX, XLS, ODS, CSV and fixed-width files.

==Real-life usage

Used by data_miner (http://github.com/seamusabshere/data_miner)

==Example

Taken from <tt>#{GEMDIR}/test/test_remote_table.rb</tt>:

    should "open an XLSX" do
      t = RemoteTable.new 'www.customerreferenceprogram.org/uploads/CRP_RFP_template.xlsx'
      assert_equal "Secure encryption of all data", t[5]["Requirements"]
    end

or on the console

    ?> t = RemoteTable.new 'http://www.fueleconomy.gov/FEG/epadata/98guide6.zip', 'filename' => '98guide6.csv'
    => #<RemoteTable:0x359da50 [...]>
    ?> t[0]
    => {"cyl"=>"6", "eng dscr"=>"DOHC VTEC", "trans dscr"=>"2MODE CLKUP", "trans"=>"Auto(L4)", "cmb"=>"20", "2pv"=>nil, "carline name"=>"NSX", "displ"=>"3.0", "ucmb"=>"23.5311", "hpv"=>nil, "4pv"=>nil, "Class"=>"TWO SEATERS", "Manufacturer"=>"ACURA", "fl"=>"P", "2lv"=>nil, "G"=>nil, "hlv"=>nil, "drv"=>"R", "cty"=>"18", "ucty"=>"19.8733", "S"=>nil, "4lv"=>nil, "fcost"=>"1050", "T"=>nil, "hwy"=>"24", "uhwy"=>"30.3612"}

See the test file and also data_miner examples of custom parsers.

==Wishlist

* The new parser syntax (aka transformer) hasn't been defined yet... only the old-style syntax is available
* We currently call curl (and a lot of other utilities) using a shell. Is there a safer way to do this?
* Row hashes may come out differently for Ruby 1.8 and Ruby 1.9, which ruins the whole purpose.
* Since <tt>Enumerable</tt> provides <tt>#to_a</tt>, I'm not sure if it's caching the row loading.

==Authors

* Seamus Abshere <seamus@abshere.net>
* Andy Rossmeissl <andy@rossmeissl.net>

== Copyright

Copyright (c) 2011 Brighter Planet. See LICENSE for details.

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
remote_table-1.0.3 README.rdoc
remote_table-1.0.2 README.rdoc
remote_table-1.0.1 README.rdoc
remote_table-1.0.0 README.rdoc