首先,该文章来自于极客时间网站,王争的专栏——《数据结构与算法之美》,我这里只是做简单的解释、记录并添加自己的见解,只是作为个人笔记,若侵权,马上删除。最后建议直接去该网站上购买该课程看原作者的讲解,一来是支持作者,二来是作者写的确实不错。
搜索引擎中爬虫的工作原理是——解析已经爬取页面中的网页链接,然后再爬取这些链接对应的网页。那同一个网页链接可能包含在多个页面中,导致爬虫的过程中,重复抓取相同的页面。那如何避免这些重复的爬取呢?最简单的方法是记录爬取的网页链接(URL),每次爬取一个网页之前,在记录中进行查询。
不过,应该如何记录已经爬取的网页链接呢?需要用什么样的数据结构呢?
算法解析
这个问题要处理的对象是网页链接,也就是URL。数据结构需要满足如下几个条件: