1

Google検索で検索結果を返すツールをC#で作成しました。ただし、Cookieをオフにして、ブラウザの履歴を削除しても。それでも、私の地元の場所であるシカゴの検索結果が返されます。私が使用したURLは次のとおりです。

URL = "https://www.google.com/search?q=health and beauty&ie = utf-8&oe = utf-8&aq = t&rls = org.mozilla:en-US:official&client = firefox-a&start = 0&num = 9&gl = us 「」

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Accept = "application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*";
request.Headers["Accept-Language"] = "en-US";
//request.UserAgent = "Mozilla/6.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/16.0.2";
request.UserAgent = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)";    
request.KeepAlive = true;
request.AllowAutoRedirect =true;
request.Timeout = 60000;
request.Method = "GET";


HttpWebResponse response = (HttpWebResponse)request.GetResponse();

if (response.StatusCode == HttpStatusCode.OK)
{
    Stream responseStream = response.GetResponseStream();
    StreamReader myStreamReader = new StreamReader(responseStream);
    responseData = myStreamReader.ReadToEnd();
}
response.Close();

ツール内では、シカゴの結果が表示され続けます。シカゴの代わりに米国の結果を取得する方法はありますか?

4

1 に答える 1

0

google.comを押す代わりに、google.caを押しますが、gl=usパラメーターを渡し続けます。したがって、URLは次のようになります。

https://www.google.ca/search?q=health and beauty&ie = utf-8&oe = utf-8&aq = t&rls = org.mozilla:en-US:official&client = firefox-a&start = 0&num = 9&gl = us

これは、私がテストした検索用語のジオターゲティングをバイパスしているようです。

于 2012-11-30T19:37:40.307 に答える