asp.net – Html-Agility-Pack没有加载包含完整内容的页面?

前端之家收集整理的这篇文章主要介绍了asp.net – Html-Agility-Pack没有加载包含完整内容的页面?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Html Agility Pack从网站获取数据(报废)

我的问题是从我提取数据的网站加载一些页面加载几秒后的内容.

所以每当我试图从特定的Div中读取特定数据时,它就会给我null.

但在var页面我只是没有得到分区reviewBox ..因为它尚未加载.

public void FetchAllLinks(String Url)
{
    Url = "http://www.tripadvisor.com/";
    HtmlDocument page = new HtmlWeb().Load(Url);

    var link_list= page.DocumentNode.SelectNodes("//div[@class='reviewBox']");

    foreach (var link in link_list)
    {
        htmlpage.InnerHtml = link.InnerHtml;
    }
}

那么有人可以告诉我如何延迟这个请求

HtmlDocument page = new HtmlWeb().Load(Url);

将在页面varibale中加载完整数据

解决方法

这不是延迟请求.该节点由javascript使用DOM填充,而Html Agility Pack是该要求的错误工具(它根本不是Web引擎,它只加载基本Html).

当我需要获得需要完整Web引擎解析的东西时,我通常使用WatiN.它旨在帮助单元测试实际网页,但这意味着它允许通过给定的浏览器引擎以编程方式访问网页并加载完整的文件.它带有开箱即用的IE或Firefox驱动程序,我模糊地回忆起Chrome也不难用.

猜你在找的asp.Net相关文章