【发布时间】:2012-12-22 03:48:11
【问题描述】:
我用 Nokogiri 编写了一个非常简单的程序来抓取网站并创建 CSV 文件。它正在获取正确的数据并制作 CSV,但数据被推入一个单元格 (A1),我宁愿它作为一列出现,每个值用逗号分隔。
如何告诉 CSV 为每个值创建一列,用逗号分隔,而不是将所有信息放入单个单元格?
require 'open-uri'
require 'nokogiri'
require 'csv'
doc = Nokogiri::HTML(open('somewebpage.com'))
CSV.open("webpagedata.csv", "wb") do |csv|
data = doc.css('.information h3 a').map { |link| link['href'] }
puts data
csv << [data]
end
【问题讨论】:
-
这不是 Nokogiri 问题,因为 Nokogiri 不会创建 CSV 数据。您必须将
css和map返回的 NodeSet 强制转换为您希望 CSV 接收的格式。