有没有办法只获取网页的文本(来源)?我尝试使用两种方法:
Using WebRequest
WebRequest myWebRequest = WebRequest.Create("http://www.website.com/");
WebResponse myWebResponse = myWebRequest.GetResponse();
Stream ReceiveStream = myWebResponse.GetResponseStream();
Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
StreamReader readStream = new StreamReader(ReceiveStream, encode);
string html = readStream.ReadToEnd();
readStream.Close();
myWebResponse.Close();
如果请求的网页是静态的,这种方法可以正常工作。但是,如果请求网页的内容仅在页面加载发生时生成,我将无法获得正确的源内容。
Using Web Browser
WebBrowser browser = new WebBrowser();
browser.ScrollBarsEnabled = false;
browser.ScriptErrorsSuppressed = true;
browser.Navigate(new Uri(http://www.website.com/));
这种方法每次都会提供适当的源内容,但会花费大量时间并且还会显示弹出窗口。此外,一些网站显示浏览器版本弹出窗口,甚至一些在 IE 中打开(我不想要)。
我的最终目标是在不打开浏览器或弹出任何弹出窗口的情况下尽快获取网页的源内容。请让我知道我可以用来实现所需解决方案的任何可能方式。谢谢。