There is now a GoogleCalendar API. They also cleaned up their XML. This is very exciting, as to date I was having to parse a lot of the data by hand in the summary field. Of course, "API" is loosely used here, as really they're just publishing a specification of their feed format.
For example the date is now its own tag:
And the location is either as simple as a name:
The format specifies possible advanced location encoding via GeoPoints, postal address, primary and alternate locations.
22646 Woodward Ave.
Ferndale, MI 48220
valueString="Woodward Ave Brewers">
22646 Woodward Ave., Ferndale,
This makes it much nicer for parsing. The API even allows for adding new events to a calendar.
Update: you have to make sure and grab the full version of the Calendar feed and not the basic
version. The Basic version contains the same old wonkiness. However, the full version is the new yummy XML-ified version. You select this by changing the last tag on the URI.