|
发表于 2014-11-16 14:51:59
|
显示全部楼层
import easygui as g
import re
import urllib.request
url=g.enterbox('请输入贴吧地址:','By:落叶飞空')
Path=g.diropenbox("请选择照片保存路径:",'Path')
def getHtml(url):#获取网页内容
page=urllib.request.urlopen(url)
html=page.read()
return html
def getpages(html):#获取页数
UrlPage_re=r'<span class="red">(\d+)</span>'
UrlPageReg=re.compile(UrlPage_re)
html = html.decode('utf8')
PageNum=re.findall(UrlPageReg,html)
return PageNum
def getImg(html):#获取指定url图片列表
reg=r'class="BDE_Image".+?src="(.*?\.jpg)" [pwb][di][wcd][a_t][teh]'
imgreg=re.compile(reg)
html = html.decode('utf8')
imglist=re.findall(imgreg,html)
return imglist
html=getHtml(url)
Pages=int(getpages(html)[1])
print("正在获取资源...")
i=1
FullList=[]
for i in range(1,Pages+1):#获取全部图片列表
FullList=getImg(getHtml(url+'?pn='+str(i)))+FullList
i=i+1
print("共获取到%s张图片..." % len(FullList))
n=0
print("开始下载图片...")
for imgurl in FullList:#下载图片
urllib.request.urlretrieve(imgurl,Path+'\\%s.jpg' % n)
print("正在下载第%s张图片..." % (n+1))
n+=1
g.msgbox("下载完成!") |
|