详尽的特定域链接列表

时间:2018-04-08 10:41:37

标签: python-3.x list recursion hyperlink

我有一个解析给定URL(通常是域的根)的内容的函数,并返回指向该域内其他位置的所有链接的列表 - 它不包含外部链接,它没有& #39; t允许重复链接。

对于列表中已有的每个链接运行该函数的最简单方法是什么,然后对于将在下一级别中找到的每个链接,依此类推,一次又一次,无论多长时间,无论多长时间,都会创建特定域名的详尽完整链接列表?

该方法应该相当有效,并且不应该使用任何库或模块,甚至不应该使用列表推导。只需最明显和最明确的基本指令。此外,了解树的结构并不重要。只是一个链接列表。

谢谢!

1 个答案:

答案 0 :(得分:0)

这是一个简单的算法

links_to_crawl = set()
crawled_links = set()

def function crawl(link):
    if (link not in crawled_links):
        new_links = findAllLinks (link)
        for new_link in new_links:
        #if new_link is not external:
            links_to_crawl.add(new_link)
        crawled_links.add(link)

for (link in links_to_crawl):
    crawl(link)

for (link in crawled_links):
    print crawled_links