访问.html页面最有效的方法是什么?

时间:2013-09-21 21:27:34

标签: c#

我有一个 的.html页面上有5个字符(4个数字和一个句点)。

我知道的唯一方法是创建一个导航到URL的web浏览器,然后使用

browser.GetElementByID();

然而,使用IE所以我确信它很慢。有没有更好的方法(不使用API​​,C#中内置的东西)只是以一种你可以阅读的方式访问网页?

3 个答案:

答案 0 :(得分:2)

尝试以下两行:

var wc = new System.Net.WebClient();
string html = wc.DownloadString("http://google.com");  // Your page will be in that html variable

答案 1 :(得分:1)

看来你想下载一个url,将其解析为html然后找到一个元素并读取它的内部文本,对吧?使用nuget获取对HtmlAgilityPack的引用,然后:

using(var wc = new System.Net.WebClient()){
    string html = wc.DownloadString("http://foo.com");
    var doc = new HtmlAgilityPack.HtmlDocument();
    doc.LoadHtml(html);
    var el = doc.GetElementbyId("foo");
    if(el != null)
    {
        var text = el.InnerText;
        Console.WriteLine(text);
    }
}

答案 2 :(得分:0)

不使用任何 API?你在.NET框架中,所以你已经在某种程度上使用了抽象层。但是如果你想要没有任何插件的纯C#,你可以打开一个到网站的TCP套接字并下载内容(毕竟它只是一个格式化的字符串)并读取数据。

这是一个类似的问题:How to get page via TcpClient?