0

わかりました、私は自分の問題に対する答えを見つけようと多くのページを読んでいますが、運がありません。基本的に、C# で HTTPWebRequest を使用して Web ページにアクセスしたいと考えています。これは私がこれまでに持っているものであり、機能していないようです。Wireshark は、返された Cookie も表示しません。私が喜ばせるために必要なすべてを宣言したと仮定します。

private void cmdVisit_Click(object sender, EventArgs e)
    {


        url = textBox1.Text;

        string front = "http://";
        string prx = front + lstProxy.Items[x].ToString();

        WebProxy myProxy = new WebProxy(prx);
        CookieContainer cookieJar = new CookieContainer();
        HttpWebRequest request = HttpWebRequest.Create(url) as HttpWebRequest;

       request.Method = "GET";
       request.Proxy = myProxy;
       request.Referer = "http://anyrefererItypehere";
       request.CookieContainer = cookieJar;
       request.ContentType = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
       request.KeepAlive = true;
       request.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip, deflate");
       request.UserAgent = "Mozilla/5.0 (Windows NT 5.1; rv:10.0.2) Gecko/20100101 Firefox/10.0.2";
       request.Headers.Add(HttpRequestHeader.AcceptLanguage, "Accept-Language: en-us,en;q=0.5");
       request.Host = "anyblogItypehere.tumblr.com";

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

        Stream stream = webResponse.GetResponseStream();
        StreamReader reader = new StreamReader(stream, Encoding.UTF8);
        String responseString = reader.ReadToEnd();

        webResponse.Close();
        rtbSource.Text = responseString;


        }
4

1 に答える 1

0

Web ページからコンテンツを取得する簡単な方法 (明確にするためにエラー処理コードは省略されています):

 public static string GetContent(string uri)
 {
     using (WebClient client = new WebClient())
     {
         // Pretend to be IE6
         client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
         return client.DownloadString(uri);
      }
  }

プロキシを指定する場合は、クライアント オブジェクトで Proxy プロパティを使用します。

于 2012-11-22T21:05:00.970 に答える