前提・実現したいこと
スクレイピングで取得した情報をCSVに書き込むアプリケーションを作っています。
サイトからの情報取得と、書き込みはうまくいっているのですが、
時間の書き込みがうまくいきません。
発生している問題
時間は表示したい形式15:26:30
のような形式で出力させるのですが、
全ての時間が同じ時間で出力させてしまうのです。
たくさんの情報を取得するので、「このレコードは何時ころに取得した」という情報を残したい意図で時間を取得しているので、
取得した時刻は細かく取得したいです。
該当のソースコード
ruby
1require "date" 2require "time" 3 4t = Time.new 5 6results = [] 7 8while true do 9# ~ここにスクレイピングで情報を取得する処理~ 10 get_title = site_title.text 11 get_day = "#{t.year}/#{t.month}/#{t.day}" 12 get_time = "#{t.hour}:#{t.min}:#{t.sec}" 13 14 result = {title: get_title, day: get_day, time: get_time} 15 results << result 16end 17 18CSV.open("test.csv",'w') do |fk| 19 fk << ["title","day","time"] 20 results.each do |sr| 21 fk << [sr[:title], sr[:day], sr[:time]] 22 end 23end
試したこと
繰り返し処理の合間にsleep 60
など入れて見ましたが、
CSVに書き込まれた時間が1分も差分が出ないのは取得に問題があるのではないかと思ったので質問しました。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。