-5
我正在使用C#,並且想要在網站上抓取所有內容(但不包括可能附加到頁面的圖像,腳本或文件)。我如何用C#和ASP.NET做到這一點?只從網站頁面讀取HTML內容
我正在使用C#,並且想要在網站上抓取所有內容(但不包括可能附加到頁面的圖像,腳本或文件)。我如何用C#和ASP.NET做到這一點?只從網站頁面讀取HTML內容
嗨,你可以使用下面的代碼片段從HERE做到這一點:
StringBuilder sb = new StringBuilder();
byte[] buf = new byte[8192];
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.your-url.com");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream resStream = response.GetResponseStream();
string tempString = null;
int count = 0;
do
{
count = resStream.Read(buf, 0, buf.Length);
if (count != 0)
{
tempString = Encoding.ASCII.GetString(buf, 0, count);
sb.Append(tempString);
}
}
while (count > 0);
Console.WriteLine(sb.ToString());
您還可以在Page
的Render
方法獲取HTML如下。
protected override void Render(System.Web.UI.HtmlTextWriter writer)
{
StringBuilder sb = new StringBuilder();
StringWriter sw = new StringWriter(sb);
HtmlTextWriter writer = new HtmlTextWriter(sw);
base.Render(writer);
string markupText = sb.ToString();
// markupText will contain the HTML of the Page
writer.Write(markupText);
}
你想在服務器端讀取頁面的HTML或什麼? – PSK 2011-06-09 10:50:03
你需要提供更多的細節,你的問題不清楚。 – PSK 2011-06-09 10:54:13
您想僅從網頁中提取文字? – 2011-06-09 10:57:02