2

ウェブサイトの公開 Google カレンダーからすべてのイベント データをダウンロードして解析したいのですが、これを行う最善の方法は何でしょうか? icsファイルをダウンロードするか、xmlデータを取得して自分で解析することを検討しています。Google api を調べましたが、データを読み取るだけの場合、不必要に複雑に見えます。私は API やプログラミング全般の初心者なので、すべてのドキュメントをナビゲートするのに苦労しています。彼らは非常に多くの役立つ例を提供していません。

4

1 に答える 1

5

このようなものはどうですか:

require 'ri_cal'
require 'open-uri'

components = nil
open("https://www.google.com/calendar/ical/ocs.events%40gmail.com/public/basic.ics") do |cal|
  components = RiCal.parse(cal)
end

components.each do |calendar|

  calendar.events.each do |event|
    puts "#{event.summary} starts at: #{event.dtstart} and ends at #{event.dtend}"
  end

end

ri_gem をインストールする必要があります。

更新: iCalendar の使用

require 'icalendar'
require 'open-uri'

calendars = nil
open("https://www.google.com/calendar/ical/ocs.events%40gmail.com/public/basic.ics") do |cal|
  #calendars = RiCal.parse(cal)
  calendars = Icalendar.parse(cal)
end

calendars.each do |calendar|

  calendar.events.each do |event|
    puts "#{event.summary} starts at: #{event.dtstart} and ends at #{event.dtend}"
  end

end
于 2013-01-18T22:03:19.980 に答える