如何在ASP.NET C#中获取网页源代码?

时间:2009-11-30 16:51:57

标签: c# asp.net httpwebrequest methods

如何在C#ASP.NET中获取页面的HTML代码?

示例:http://google.com

我如何通过ASP.NET C#获取此HTML代码?

4 个答案:

答案 0 :(得分:17)

WebClient课程可以满足您的需求:

string address = "http://stackoverflow.com/";   

using (WebClient wc = new WebClient())
{
    string content = wc.DownloadString(address);
}

正如评论中所提到的,您可能更喜欢使用DownloadString的异步版本来避免阻止:

string address = "http://stackoverflow.com/";

using (WebClient wc = new WebClient())
{
    wc.DownloadStringCompleted +=
        new DownloadStringCompletedEventHandler(DownloadCompleted);
    wc.DownloadStringAsync(new Uri(address));
}

// ...

void DownloadCompleted(object sender, DownloadStringCompletedEventArgs e)
{
    if ((e.Error == null) && !e.Cancelled)
    {
        string content = e.Result;
    }
}

答案 1 :(得分:1)

HttpWebrequest.GetResponse的MSDN示例有工作代码。

http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.getresponse.aspx

答案 2 :(得分:0)

如果问题是“如何获取网页的代码隐藏文件”,答案是否定的。

答案 3 :(得分:-1)

如果您计划执行大量Web请求以访问RESTful服务,请注意HttpWebRequest对象。回收需要一段时间,如果你有足够的流量(每分钟只有几个电话),你就会开始变得奇怪。

如果您动态加载其他页面,我建议您使用JavaScript。