我工作的一个脚本来获取数据,从网上商店productpages &图像0(由业主批准)网络与引入nokogiri :: HTML和Ruby刮痧 - 保存图像
我有一个工作的脚本,通过循环一个带有20042产品URL的CSV文件,可以将我需要的数据存储在CSV文件中。我需要的最后一件事是保存产品图像。
我有这样的代码(在此thread感谢Phrogz)
URL = 'http://www.sample.com/page.html'
require 'rubygems'
require 'nokogiri'
require 'open-uri'
require 'uri'
def make_absolute(href, root)
URI.parse(root).merge(URI.parse(href)).to_s
end
Nokogiri::HTML(open(URL)).xpath('//*[@id="zoom"]/@href').each do |src|
uri = make_absolute(src,URL)
File.open(File.basename(uri),'wb'){ |f| f.write(open(uri).read) }
end
运行伟大的一个单独的URL,但我努力把它从通过CSV文件中的URL进行工作和我的圈启动这样的主脚本:
# encoding: utf-8
require 'nokogiri'
require 'open-uri'
require 'csv'
require 'mechanize'
@prices = Array.new
@title = Array.new
@description = Array.new
@warranty = Array.new
@leadtime = Array.new
@urls = Array.new
@categories = Array.new
@subcategories = Array.new
@subsubcategories = Array.new
urls = CSV.read("lotofurls.csv")
(0..urls.length - 1).each do |index|
puts urls[index][0]
doc = Nokogiri::HTML(open(urls[index][0]))
貌似我只需要搞清楚的是如何将网址喂到代码保存图像,但任何帮助,将不胜感激!