0

我需要一种轻微/快速的方法来仅下载页面 html 的内容。比我能抓住它的元标记。这是我的实际代码:

HttpWebRequest request = WebRequest.Create(resoruce_url) as HttpWebRequest;
request.UserAgent = Request.UserAgent;

try
{
    using (WebResponse response = request.GetResponse())
    {
        using (var reader = new StreamReader(response.GetResponseStream()))
        {
            var objectText = reader.ReadToEnd();
            Response.Write(objectText);
        }
    }
}
catch (Exception e) { Response.Write(e.Message); }

问题是它不支持“Javascript”作为请求,所以带有一些控件的页面,我只得到<noscript>html 代码。

我该怎么做?我不能做客户端,因为请求的页面不在同一个域中。所以唯一的方法是服务器端。

有人说要使用WebBrowser,但我知道它是一种“浏览器模拟器”,需要很多资源。我只需要一个轻微的解决方案。有什么建议么?

4

2 回答 2

1

怎么样WebClient

实现起来非常简单。见: http ://www.hanselman.com/blog/HTTPPOSTsAndHTTPGETsWithWebClientAndCAndFakingAPostBack.aspx

于 2013-10-14T07:30:36.150 回答
0

看看PhantomJS,它是一个可编写脚本且可移植的“无头”基于 WebKit 的浏览器。我不确定它使用的资源是否比 IE 的 WebBrowser 控件少。

于 2013-10-14T10:09:52.043 回答