import urllib import re def cbk(a, b, c): per = 100.0 * a * b / c if per > 100: per = 100 print '%.2f%%' % per def getHtml(url): page = urllib.urlopen(url) html = page.read() page.close() return html def getVideo(html): reg = 'src="(.*?.mp4)" ' reg2='\d{2}-\w+\.mp4$' videore = re.compile(reg) videourl = videore.findall(html) for vurl in videourl: print vurl a=re.search(reg2, vurl) res=a.group() urllib.urlretrieve(vurl, res,cbk) nu = [11,12,13] for num in nu: lc = getHtml(r"http://www.linuxcast.net/public/cast_show/%s"%(num)) print getVideo(lc)
报错如下:
是正则出错了,只看了一部分地址,没想到以前的地址是没有规律性的,导致正则不能搜索的正确的文件名。
re.search(reg2, vurl)
这个搜索不到匹配的内容,就返回None,自然就不能调用group()方法咯。。