小弟在做一个GOOGLE广告排名分析的程序以下是代码
string TKeyword = HttpUtility.UrlEncode("q=彩信");
string strUrl = "http://www.google.com/sponsoredlinks?q="+TKeyword+"&hl=zh-CN&lr=&newwindow=1&start=0&sa=N";
//string strUrl = "http://www.google.com/sponsoredlinks";HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(strUrl);
myReq.Method = "GET"; 
//myReq.ContentLength = TKeyword.Length;
//myReq.ContentType = "application/x-www-form-urlencoded";//StreamWriter writer = new StreamWriter(myReq.GetRequestStream());
//writer.Write(TKeyword);
//writer.Close();HttpWebResponse resp = (HttpWebResponse)myReq.GetResponse();System.Text.Encoding resEncoding = System.Text.Encoding.GetEncoding("gb2312");
Stream s = resp.GetResponseStream();
StreamReader sr = new StreamReader(s,resEncoding);
String text = sr.ReadToEnd();
sr.Close();
s.Close();
当使用GET方式时不仅无法查询到信息(直接粘贴地址去浏览器可以查询到信息),而且部分中为为乱码,把gb2312改成utf-8后,乱码和非乱码的文字正好调换了~~使用post发送时(注释部分),总是提示远端未实现,小弟无奈了,望各位帮看看,谢谢
能得到广告页正确的HTML就好,谢谢了

解决方案 »

  1.   

    System.Text.Encoding resEncoding = System.Text.Encoding.GetEncoding("gb2312");
    放在最上面,然后:
    string TKeyword = HttpUtility.UrlEncode("q=彩信",resEncoding );试试
      

  2.   

    我直接在URL里打开,提示:
    很抱歉..
    ... 此刻我们无法回应您的要求。该请求通过电脑病毒或间谍软件向我们自动发送,而且看来您的电脑或网络已受感染。 我们会尽快恢复您的使用,请稍后再试。同时,您可以运行病毒检测器或间谍软件清除器确保您的电脑没有携带病毒及其它欺诈软件。 我们对此深感抱歉,希望很快在Google 与您再会。 
      

  3.   

    http://www.google.com/sponsoredlinks?q=彩信&hl=zh-CN&lr=&newwindow=1&start=0&sa=N
    上面这个url你打开会是这个提示?