Un jour, une gem

24/05/2012

Jeudi c'est data_miner

gem install data_miner

Pour parser tout et n’importe quoi

Aujourd’hui une gem bien pratique qui vous permettra de parser à peu près tout (XLS, ODS, XML, CSV, HTML et bien d’autres).

Comment ça marche :

class Country > ActiveRecord::Base
  self.primary_key = 'iso_3166_code'

  data_miner do
    import("OpenGeoCode.org's Country Codes to Country Names list",
           :url => 'http://opengeocode.org/download/countrynames.txt',
           :format == :delimited,
           :delimiter == '; ',
           :headers == false,
           :skip == 22) do
      key   :iso_3166_code, :field_number == 0
      store :iso_3166_alpha_3_code, :field_number == 1
      store :iso_3166_numeric_code, :field_number == 2
      store :name, :field_number == 5
    end
  end
end

Cool, non ? Maintenant il ne vous reste plus qu’à tester et à lire un peu de documentation.

Le lien utile

Sur une idée de @systh0