【问题标题】:Web scraping paginated page using HtmlAgilityPack使用 HtmlAgilityPack 抓取网页分页页面
【发布时间】:2016-04-29 02:53:23
【问题描述】:

我正在使用 html 敏捷包创建网络爬虫,我有一个关于分页的问题。 我在网上搜索了一些可以帮助我前进的东西,但我离我不远。我需要抓取所有分页页面的内容。是否有任何机制可以使用 htmlagility 或任何帮助来做到这一点。 我还发现了像 selenium 这样的其他应用程序并对其进行了研究。有没有办法我可以利用硒以及 htmlagility 来抓取? 任何形式的帮助将不胜感激。 谢谢

【问题讨论】:

  • 您当然可以使用 HtmlAgility 页面来获取页面上的所有链接,包括分页链接,但您的问题过于宽泛而无法回答。你试过什么?下面是一个使用 HtmlAgility 包爬取网站的示例:blog.abodit.com/2010/03/…
  • 谢谢伊恩,我已经使用 HAP 来抓取网站,但我没有意识到分页的东西。所以只是想获得新的想法
  • 分页通常被实现为只是一堆链接(1 2 3 ... n),有时会随着您的探索而发展(... 4 5 6 ...)或者你的意思是别的?
  • 我遇到了你说的第二种类型,我想如果我能刮掉这个我可以做任何其他类型。

标签: c# selenium-webdriver web-scraping html-agility-pack


【解决方案1】:

当然,您可以将 HAP 与 Selenium 一起使用。基本上,您可以使用 selenium 驱动程序之一导航到 URL,然后将 HTML 加载到 HAP 中,如下所示:

IWebDriver driver = new FirefoxDriver();
driver.Navigate().GoToUrl(url);
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(driver.PageSource);

完成当前页面的解析后,将驱动程序导航到下一页(找到下一页链接并执行单击操作)并再次将 HTML 传递给 HAP。无论如何,我认为大部分 HAP 功能都可以被 Selenium 取代,所以您可能需要考虑仅使用 Selenium。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-02
    • 2021-03-10
    • 1970-01-01
    • 2013-06-02
    • 2011-12-24
    相关资源
    最近更新 更多