我试图创建一个Windows服务。服务的目的是从数据库中提取URL并从谷歌中检查他们的页面等级。目的是抓住任何一个伪造他们的页面行列。我在http://www.codeproject.com/KB/aspnet/Google_Pagerank.aspx找到了一些代码并使用它。在ttp://toolbarqueries.google.com/search?q = info:(domainName)上获取“远程服务器返回错误:(503)服务器不可用”
现在,这里是代码
public static int GetPageRank()
{
string file = "http://toolbarqueries.google.com/search?q=info:codeproject.com";
try
{
//Request PR from Google
WebRequest request = WebRequest.Create(file);
WebResponse response = request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
string data = reader.ReadToEnd();
reader.Close();
response.Close();
//Parse PR from string
int pageRank = -1;
if (data.IndexOf(':') != -1)
{
data = data.Substring(data.LastIndexOf(':') + 1);
}
int.TryParse(data, out pageRank);
return pageRank;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
return -1;
}
}
现在正在发生的事情是这样的,当这种方法的一些尝试,例如100次尝试,我开始越来越下列异常后调用。 “远程服务器返回错误:(503)服务器不可用”。我已经做了一些研究,我也看到了有关堆栈溢出的相关问题。显然谷歌停止提供服务请求,如果他们中的许多源于同一个IP。有没有任何解决办法可以让我在两个小时或三个小时内检查几千个网页。