我獲取網頁以將數據提供給我的應用程序。但是,這些頁面包含了許多我根本不需要的圖像。我只需要文本數據。 我的問題是,Web請求佔用了無法接受的時間。我認爲這些圖片也是在網絡請求期間獲取的。有什麼方法可以消除圖像並僅下載文本數據?忽略來自通過HttpWebRequest請求的網頁的圖像
以下是我目前使用的代碼。
var httpWebRequest = HttpWebRequest.Create(url) as HttpWebRequest;
httpWebRequest.Method = "GET";
httpWebRequest.ProtocolVersion = HttpVersion.Version11;
httpWebRequest.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip,deflate");
httpWebRequest.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
httpWebRequest.Proxy = null;
httpWebRequest.KeepAlive = true;
httpWebRequest.Accept = "text/html";
string responseString = null;
var httpWebResponse = httpWebRequest.GetResponse() as HttpWebResponse;
using (var responseStream = httpWebResponse.GetResponseStream())
{
using (var streamReader = new StreamReader(responseStream))
{
responseString = streamReader.ReadToEnd();
}
}
此外,任何其他優化建議是最受歡迎的。
'有沒有什麼方法可以消除圖像並只下載文本數據?'您已經下載了純粹的html而不是圖像。 –
@ L.B - 好的。那麼是否沒有進一步優化的空間? –
優化速度,代碼?例如,如果您使用了'WebClient',則可以將代碼寫入兩行。 (當然WebClient在功能上是HttpWebRequest的子集) –