标签:style blog http color ar sp for div on
先贴出代码,行数比较少,仅仅用正则表达式分析出题目Title所在的标签并把题目Title提取出来
1 import urllib.request 2 import re 3 import dbm 4 #定义URL,其中%d用于替换页码 5 url = ‘http://acm.zju.edu.cn/onlinejudge/showProblems.do?contestId=1&pageNumber=%d‘ 6 #连接持久化字典,这里用创建的方法‘c‘来创建写入 7 db = dbm.open(‘zoj_list‘, ‘c‘) 8 9 for index in range(1, 30): 10 this_url = url % (index)#替换URL中代表页码的数字 11 html = urllib.request.urlopen(this_url).read()#read方法读取页面HTML 12 html = html.decode(‘utf-8‘)#UTF-8编码,没有这句会提示错误 13 title = re.compile(‘<font color="blue">.*</font>‘)#正则之,编译之 14 key = ‘‘ 15 cnt = 1 16 for x in title.findall(html): 17 title_parse = re.compile(‘<[^>]+>‘)#除去标签的正则 18 get = title_parse.sub(‘‘, x)#除去标签 19 if cnt % 2 == 0: 20 value = get 21 db[key] = value 22 else: 23 key = get 24 cnt += 1
这个把key和value通过字典保存到了‘zoj_list‘这个持久化字典中。
读取这个字典的代码如下:
1 import dbm 2 db = dbm.open(‘zoj_list‘, ‘r‘) 3 print(db[‘1001‘]) 4 for index in range(1001, 2000): 5 in_ch = str(index) 6 print(db[in_ch])
标签:style blog http color ar sp for div on
原文地址:http://www.cnblogs.com/changme/p/4087347.html