2016-02-19 47 views
0

我有一個web爬網腳本和一個刮板腳本。當我整合這兩者時,我可以從每個網頁獲取我想要的數組,但我無法將其保存到CSV文件。我想這個代碼,但它不工作:如何將數組保存到CSV文件?

CSV.open("scraper.csv", "wb") do |csv| 
      csv << ["date", "venue", "time", "race_number", "race_name", "track", "purse"] 
      csv << $race_data = [date, venue, time, race_number, race_name, track, purse] 
end 

嗯,這的確節省了CSV文件,但該文件只是不斷改寫本身,而不是僅僅製造一個文件與 - 家居 - 上它。

+2

我相信這個問題有你要找的答案:http://stackoverflow.com/questions/4822422/output-array -to-csv-in-ruby – akz92

+0

我這樣做了,而csv文件不是我得到的數組的編譯。 :(csv文件只有一行,然後繼續覆蓋自己。對不起,我剛剛瞭解了上週的紅寶石。 – heartless

回答

0

找到了答案。問題是我的CSV.open是在「w」中用新數據覆蓋文件。所以,從

CSV.open("scraper.csv", "wb") do |csv| 
     csv << ["date", "venue", "time", "race_number", "race_name", "track", "purse"] 
     csv << $race_data = [date, venue, time, race_number, race_name, track, purse] 
end 

我這樣說:

CSV.open("scraper.csv", "ab") do |csv| 
     csv << ["date", "venue", "time", "race_number", "race_name", "track", "purse"] 
     csv << $race_data = [date, venue, time, race_number, race_name, track, purse] 
end 
相關問題