爬虫系列7深度遍历网页

# 所以我们要过滤掉相同的链接
seen = set()
def link_crawler(seed_url, link_regex):
'''
给一个url种子,爬取能找到的所有链接
:param send_url: 第一个url种子
:param link_regex:匹配网页的正则表达式
:return:
'''
crwal_queque = [seed_url]
while crwal_queque:
url = crwal_queque.pop()
seen.add(url)
html = download(url)
# 利用正则表达式,从页面中继续提取url_seed
for link in get_links(html):
if re.match(link_regex, link):
link = urlparse.urljoin(seed_url, link)
if link not in seen:
crwal_queque.append(link)

你可能感兴趣的:(爬虫系列)