C# kann auf drei Arten abgerufen werden: WebClient, WebRequest und HttpWebRequest.
Natürlich kannst du auch webBrowse nutzen! Ich werde mir nicht anschauen, wie webBrowse hierher gelangt.
WebClient
private String GetWebClient(string url)
{ string strHTML = ""; WebClient myWebClient = neuer WebClient(); Stream myStream = myWebClient.OpenRead(url); StreamReader sr = neuer StreamReader(myStream, System.Text.Encoding.GetEncoding("utf-8")); strHTML = sr. ReadToEnd(); myStream.Close(); return strHTML;
} WebRequest
privater String GetWebRequest(String-URL)
{ Uri uri = neuer Uri(url); WebRequest myReq = WebRequest.Create(uri); WebResponse-Ergebnis = myReq.GetResponse(); Stream receviceStream = Ergebnis. GetResponseStream(); StreamReader readerOfStream = neuer StreamReader(receviceStream, System.Text.Encoding.GetEncoding("utf-8")); string strHTML = readerOfStream.ReadToEnd(); readerOfStream.Close(); receviceStream.Close(); Ergebnis. Close(); return strHTML;
} HttpWebRequest
private String GetHttpWebRequest(string url)
{ Uri uri = neuer Uri(url); HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(uri); myReq.UserAgent = "User-Agent:Mozilla/4.0 (kompatibel; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705"; myReq.Accept = "*/*"; myReq.KeepAlive = true; myReq.Headers.Add("Accept-Language", "zh-cn,en-us; q=0,5"); HttpWebResponse-Ergebnis = (HttpWebResponse)myReq.GetResponse(); Stream receviceStream = Ergebnis. GetResponseStream(); StreamReader readerOfStream = neuer StreamReader(receviceStream, System.Text.Encoding.GetEncoding("utf-8")); string strHTML = readerOfStream.ReadToEnd(); readerOfStream.Close(); receviceStream.Close(); Ergebnis. Close(); return strHTML;
} Beachten Sie, dass "UTF-8" der Codierung der angegebenen Webseite entsprechen sollte.
Zusammenfassung
Man sieht, dass die Methode HttpWebRequest am komplexesten ist, aber sie bietet mehr Auswahl.
|