爬虫是封装在WebCrawler类中的,Test.py调用爬虫的craw函数达到下载网页的功能。
运用的算法:广度遍历
关于网络爬虫的详细信息请参考百度百科
Test.py
-------------------------------------------------------------------------
# -*- coding: cp936 -*-
import WebCrawler
url = raw_input('设置入口url(例-->http://www.baidu.com): \n')
thNumber = int(raw_input('设置线程数:')) #之前类型未转换出bug
Maxdepth = int(raw_input('最大搜索深度:'))
wc = WebCrawler.WebCrawler(thNumber, Maxdepth)
wc.Craw(url)
WebCrawler.py
-------------------------------------------------------------------------
# -*- coding: cp936 -*-
import threading
import GetUrl
import urllib
g_mutex = threading.Lock()
g_pages = [] #线程下载页面后,将页面内容添加到这个list中
g_dledUrl = [] #所有下载过的url
g_toDlUrl = [] #当