Я пытаюсь построить грабли, которые выбирают фид продукта и добавляют его в мою базу данных.
task :testme => :environment do
require 'nokogiri'
require 'zlib'
require 'open-uri'
@url = "http://some_url/filename.xml.gz"
@source = open((@url), :http_basic_authentication=>[USERID, "PASSWORD"])
@gz = Zlib::GzipReader.new(@source)
@result = @gz.read
@doc = Nokogiri::XML(@result)
@doc.xpath("//product").each do |item|
Product.create(:productname => product.css("name").text)
end
end
Так что это прекрасно работает до
@doc = Nokogiri::XML(@result)
который выдает ошибку рейка
File name too long (repeating the content of xml- document)
Это действительно сбивает с толку, потому что я разработал и протестировал его в модели, где я мог прочитать, разархивировать и найти файл, а затем написать нужные поля с помощью put.
У вас есть идея?
Приветствия
Val