0
我已经得到了DOM刮跑引入nokogiri宝石Ruby脚本如下:DOM刮使用引入nokogiri
require 'rubygems'
require 'nokogiri'
require 'open-uri'
names = Array.new
contact = Array.new
address = Array.new
final = Array.new
doc = Nokogiri::HTML(open('INSERTURLHERE'))
names = doc.xpath("//span[contains(@class,'jcn')]/a/text()").collect {|node| node.strip.text}
contact = doc.xpath("//p[contains(@class,'jrcw')]/a/b/text()").collect {|node| node.text.strip}
address = doc.xpath("//p[contains(@class,'jaid')]/text()").collect {|node| node.text.strip}
final.zip(names, contact, address).each do |names, contact, address|
puts names + " " + contact + " " + address
end
我使用的命令行作为
ruby filename.rb > output.txt
运行然而, output.txt是空的。脚本有什么问题导致脚本无法运行?
,如果你上传的内容打印'把names','提出contact' ,'放置地址'? – falsetru
@falsetru它打印名称,联系人和地址。 – Newtt
就像你通常不需要使用collect方法初始化数组一样,注释会返回一个Array,所以'Array.new'方法可能是不必要的。我只会初始化一个空数组,如果我需要将它追加到一个块中。 – engineersmnky