Всегда есть вариант разбора html:
Мне потребовалось примерно 200 000 000 (или, по крайней мере, 24M) результатов, и, поскольку API его не сокращал, я решил загрузить результаты html.и разобрать их вручную с помощью регулярных выражений.С помощью HashTables мне удалось устранить любые дубликаты.
Мое регулярное выражение:
(анализировать только URL-адреса с данным доменом и содержать субдомены с 3-20 буквенно-цифровыми символами)
@"((?!www)([A-Za-z0-9-]{3,20})(\.example\.com))"
Используемый URL-адрес HTML:
[C# Source]
String.Format( "http://www.google.com/search?q=site:{0}&num={1}"+
"&hl=en&tbo=d&as_qdr=all&start={2}&sa=N&biw=1280&bih=709",
"example.com", count, start)
Это было проверено в моих собственных приложениях и дает довольно хорошие результаты!