常用符号
常用方法
findall:匹配所有符合规律的内容,返回列表
search:匹配第一个符合规律的内容,返回正则表达式对象
sub:替换内容,返回替换后的值(替换页码)
picdownloader.py
#-*-coding:utf8-*-
import re
import requests
#读取源代码文件
f = open('source.txt','r')
html = f.read()
f.close()
#匹配图片网址
pic_url = re.findall('img src="(.*?)" class="lessonimg"',html,re.S)
i = 0
for each in pic_url:
print 'now downloading:' + each
pic = requests.get(each)
fp = open('pic\\' + str(i) + '.jpg','wb')
fp.write(pic.content)
fp.close()
i += 1
20161204补充:
匹配 以@为中心,返回能够找到左右两边有相同字符的字符串
(?=pattern) 正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如,'Windows (?=95|98|NT|2000)' 能匹配 "Windows 2000" 中的 "Windows" ,但不能匹配 "Windows 3.1" 中的 "Windows"
http://www.blogjava.net/mstar/archive/2008/03/14/186377.html