from urllib3 import *
from re import *
#禁止显示警告信息
disable_warnings()
#下载url对应的web页面
def download(url):
result = http.request('GET',url)
#获取web页面对应的HTML代码
htmlStr = result.date.decode('uft-8')
return htmlStr
#分析HTML代码
def anayse (htmlStr):
#通过正则表达式获取所有class属性值为titlelnk的<a>节点
alist = findall('<a[^>]*titlelnk[^>]*>[^<]*</a>',htmlStr)
result= []
#提取每一个<a>节点中的url
for i in alist:
#利用正则表达式提取<a>节点中的url
g=search ('href[\s]*[\'"]([^>\'"]*)['\"']',a)
if g != none:
url = g.group(1)
#通过查找的的方式提取<a>节点中博客的标题
index1 = a.find(">")
index2 a.find("<")
#获取博客标题
title = a[index1+1:index2]
d={}
d['url']=URL
d['title']=titlel
result.append[d]
#返回一个包含博客标题和url的对象
return result
#抓取博客列表
def crawler(url):
html = download(url)
blogList = anayse(html)
#输出博客园首页的所有标题和url
for blog in blogList:
print ("title:",blog["title"])
print("url:",blog["url"])
#开始抓取博客列表
crawler('https://)