This one is deprecated since the demise of Gadgets on sites.
Each night I used to run a scheduled task which takes the Google Analytics data for this Google Sites and matches it up to the site pages. At the time of writing I have 1000 different pages in analytics to match to 500 pages on this site.
The code is pretty straightforward, and will clean up the result of an analytics query and place it in a nicely formatted object. As usual I’m using exponential backoff to avoid rate limiting problems
I called this for each time period in my report – I was going for the past month, the past year, and all time – and then match up the analytics with the each page on the site.
This returns an array of objects like this – notice how the urls have spelling mistakes to deal with in the matching process.
See more like this in  Displaying analytics data on site pages.