【问题标题】:Scrape results of multiple search pages with Beautiful Soup and Python使用 Beautiful Soup 和 Python 抓取多个搜索页面的结果
【发布时间】:2019-05-12 13:11:21
【问题描述】:

我正在学习使用 Beautiful Soup 从网站上抓取一些信息。该网站有多个我想要抓取的搜索结果页面。

这很简单,因为每个页面的 URL 都会改变:

website.com/page1
website.com/page2
.
.

但我事先不知道会有多少页。所以我不想尝试抓取website.com/page13,如果没有,或者website.com/page13 只显示可能是website.com/page9 的最后一个结果页面。

有什么方法可以在我到达最终结果页面时停止抓取?

【问题讨论】:

    标签: python beautifulsoup


    【解决方案1】:

    搜索页面的结果通常带有某种索引。如果您正在查看的页面已显示索引,您可以在两次看到相同索引时停止。

    此外,您可能会在页面底部遇到结果分页,您可以从您所在的页面判断您是否处于该列表中的分页末尾。

    此外,搜索页面通常在每个页面上显示一定数量的结果,因此在这些情况下,如果结果突然少于最后一页,您可以假设您所在的页面是最后一页。

    在重复页面的情况下区分的另一种方法是保留当前页面的第一个结果并将其与下一页的第一个结果进行比较,如果它们相同,那么您就完成了。

    如果您可以在您尝试此操作的页面上提供更多详细信息,或者提供有关问题范围的更多详细信息,我可能会提供额外的意见。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-25
      • 1970-01-01
      • 2016-05-16
      • 1970-01-01
      • 2016-11-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多