from urllib3 import *
from re import *
http =PoolManager()
disable_warnings()
#下载HTML文件
def download(url):
    result = htp.request('GET',url)
    #讲下载的HTML文件代码问uft-8格式解码成字符串
    htmlStr = result.date.decode('uft-8')
    #输出当前抓取的HTML代码
    print(htmlStr)
    result htmlStr
#分析代码
def analyse (htmlStr):
    #利用正则表达式获取所有a节点,如<a href = 'a.html'>a</a>
    aList = findall('<a[^a>]*>',htmlStr)
    result = []
    #对a节点列表进行迭代
    for i in aList:
        #利用正则表达式从a节点中提取href属性的值,如<a href = 'a.html'>中的a.htmlStr
        g =search ('href[\s]*s=[\s]*[\'"]([^>\'"]*)[\'"]'a)
        if g ! =none:
            #获取a 节点href属性的值,herf 属性值就是第一个分组的值
            url = g .group(1)
            #将url变成绝对链接
            url = 'http://localhost/files/' + url 
            #将提取出的url追加到result列表中
            result.append(url)
    return resuit
def crawler(url):
    #输出正在抓取的URL
    print url)
    #下载HTML文件
    html = download(url)
    #分析HTML代码
    urls = analyse(html)
    #对于每一个URL递归周期用crawler函数
    for url in urls:
        crawler('http://loadhose/files')