如何使用ASP.NET獲取網頁的內容?我需要編寫一個程序來獲取網頁的HTML並將其存儲到字符串變量中。如何獲取網頁內容並將其保存到字符串變量中
61
A
回答
94
可以使用WebClient
WebClient client = new WebClient();
string downloadString = client.DownloadString("http://www.gooogle.com");
7
Webclient client = new Webclient();
string content = client.DownloadString(url);
通過你想要得到的頁面的URL。你可以使用htmlagilitypack來分析結果。
62
我已經與Webclient.Downloadstring之前遇到的問題。使用WebClient.DownloadString
WebRequest request = WebRequest.Create("http://www.google.com");
WebResponse response = request.GetResponse();
Stream data = response.GetResponseStream();
string html = String.Empty;
using (StreamReader sr = new StreamReader(data))
{
html = sr.ReadToEnd();
}
19
我建議不:如果你這樣做,你可以試試這個。這是因爲(至少在.NET 3.5中)DownloadString不夠聰明,可以使用/刪除BOM,如果它存在。這會導致BOM(
)在返回UTF-8數據時(至少沒有字符集)錯誤地作爲字符串的一部分顯示 - ick!
相反,這種輕微變化將正確地工作的材料明細表:
string ReadTextFromUrl(string url) {
// WebClient is still convenient
// Assume UTF8, but detect BOM - could also honor response charset I suppose
using (var client = new WebClient())
using (var stream = client.OpenRead(url))
using (var textReader = new StreamReader(stream, Encoding.UTF8, true)) {
return textReader.ReadToEnd();
}
}
相關問題
- 1. 如何從JTextField獲取字符串並將其保存在變量中?
- 2. 保存網頁內容到變量
- 3. 從字符串變量獲取子串並保存到NSMutableArray
- 4. 如何從網頁中提取字符串並將其放入PHP變量中
- 5. 如何使用Go獲取網頁內容到字符串
- 6. 獲取字符串值,並將其添加到特定變量
- 7. 獲取表中的行號並將其保存到php變量
- 8. 如何在字符串中選擇一個字符串並使用jQuery將其保存到變量中?
- 9. 如何消除部分字符串並保存到變量中?
- 10. 將QLineEdit對象的內容保存爲字符串變量(C++)
- 11. 將網頁上的文本保存爲字符串變量
- 12. 如何從MYSQL中獲取單個值並將其保存到JavaScript變量中?
- 13. 獲取控制檯中的JSON字符串並將其存儲在變量中
- 14. 如何讀取XML內容的字符串的內容,並將其保存爲XML
- 15. 將字符串$變量保存到另一個變量中
- 16. 獲取兩列的總和並將其保存到變量
- 17. 如何從數組中獲取字符並將其存儲在變量中?
- 18. 獲取子字符串並使用循環將其存儲在變量中
- 19. 拆分字符串並將內容存儲到3個不同的變量中
- 20. 如何將字符串內容保存到本地文件
- 21. 如何拆分字符串並將其保存到數組
- 22. 如何獲取shell變量中網頁的內容?
- 23. 添加Xml節點並將其從xml的字符串內容保存到c#
- 24. 將XML內容保存到變量
- 25. 如何獲取整數值並將其存儲到變量?
- 26. 從頁面獲取響應並將其存儲到字符串中
- 27. 如何結合字符串中的字母並將它們保存到JAVA中的其他變量中,Android
- 28. Python獲取文件名並將其保存在變量中
- 29. 如何將字符串標記保存爲字符變量?
- 30. 如何將「response.body()。string()」保存到字符串變量?
不幸的是DownloadString(截至.NET 3.5)是不夠聰明與物料清單的工作。我在答覆中加入了一個替代方案。 – user2246674 2013-05-04 00:13:56
沒有投票,因爲沒有使用(WebClient客戶端=新的WebClient()){} :) – 2013-07-15 04:24:01