0
Я пытаюсь создать задачи rake, которые извлекают фид продукта и добавляет его в мой db.Rake задача получить XML-поток с nogokiri и записать выбранные поля в DB
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