python之花瓣美女下载

python之花瓣美女下载


作者:vpoet
日期:大约在夏季
注:代码随意copy 不用告诉我

主要功能:
    1.搜索花瓣http://huaban.com/下的图片
    2.选定下载图片数目
    3.显示下载进度
    4.创建目录并下载到桌面

注释少,凑合看。
#coding: utf-8
import urllib, urllib2, re, sys, os
import random
reload(sys)
 
def Schedule(a,b,c):
    """a:已经下载的数据块
    b:数据块的大小
    c:远程文件的大小"""
    per = 100.0 * a * b / c
    if per > 100:
        per = 100
    print '%.2f%%' % per





def SearchAndDownLoadImg(SearchStr,NumPerPage,filepath):
    
    url = 'http://huaban.com/search/?q=%s&per_page=%s' % (SearchStr,str(NumPerPage))
    
    Respon = urllib2.urlopen(url)
    
    Htm = Respon.read()
    
    print url+"\n\n\n"
    
    print "----------------Search Over,And Begin DownLoad----------------"+"\n\n"
    
    Patt=re.compile('"file":\{"farm":"farm1",.+?"bucket":"hbimg",.+?"key":"(.*?)",.+?"type":"image/(.*?)",.+?"width":')
    
    group = re.findall(Patt,Htm)
    
    #print "find total imgurl"+len(group)+"\n"
    
    x = 1
    
    for item in group:
    
        imgurl=r"http://img.hb.aicdn.com/"+item[0]+"_fw658"
        
        urllib.urlretrieve(imgurl,filepath+'\pic%s.%s' % (str(x),item[1]),Schedule)
        
        print imgurl+"------>down over" +"\tpic"+ str(x)
        
        x = x+1
    
    

if __name__ == "__main__":
    
    print "Please input the picture you want to download:"
    
    SearchStr = raw_input()
    
    print "\n\n"
    
    print "Please input the PageNumber you want to download:"
    
    NumPerPage = raw_input()
    
    print "\n\n"
    
    print "-----------------------Begin Search---------------------------"+"\n"
    
    
    filenum = random.randint(20, 50)
    
    filename = 'PictureFile'+str(filenum)
    
    filepath = 'C:\Users\Administrator\Desktop'+'\\'+filename
    
    if(os.path.exists(filepath) == False):
        os.mkdir(filepath)
    
    #print filepath
    
    SearchAndDownLoadImg(SearchStr,NumPerPage,filepath)
    
    #http://img.hb.aicdn.com/23a58517fb73f86bca85937f069724486b3e00a44caa-GMc99I_sq75sf
    
    print"\n\n"
    
    print "---------------------All Down Over-----------------------"

运行截图:
搜索Beatuiful,下载20张图片

花瓣搜索结果:


运行截图,显示下载进度:

图片爬取结果:



  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值