You can grab the title from the ResultElement.
By snapshot -- if you mean the google cache, you can check for cachedSize -- if it exists -- you can then request the google cache for that url.
As for the meta tags -- you'll have to write a spider that will visit each site, download all (or a part) of the page -- and then parse the meta tags.
Since you didn't say what language you are using -- I won't give you any language specific examples.
In order to understand recursion, one must first understand recursion.
If you feel like it, you can read my blog
Signal > Noise