1
我想收集和存储所有这些信息到一个数组中。我应该如何重构这个?
我有以下几点,我该如何重构这个?
require 'rubygems'
require 'nokogiri'
require 'open-uri'
@urls = %w{http://url_01.com http://url_02.com http://url_03.com}
@link_01_arr = []
@link_02_arr = []
@link_03_arr = []
link_01 = Nokogiri::HTML(open("#{@urls[0]}"))
@link_01_arr[0] = link_01.at("title").inner_html
@link_01_arr[1] = link_01.at(".content").inner_html
@link_01_arr[2] = link_01.at(".date").inner_html
我试着这样做,而不是结果显着慢。我猜是因为这种方式有更多的要求。
@urls = %w{http://url_01.com http://url_02.com http://url_03.com}
@titles_arr = @urls.map do |url|
Nokogiri::HTML(open(url)).at("title").inner_html
end
@content_arr = @urls.map do |url|
Nokogiri::HTML(open(url)).at(".content").inner_html
end
@date_arr = @urls.map do |url|
Nokogiri::HTML(open(url)).at(".date").inner_html
end
这段代码坏了;你只创建一个数组。 – molf 2010-09-02 20:57:24
哎呦。编辑修复(/删除问题)。 – adamse 2010-09-02 22:08:21