zoukankan      html  css  js  c++  java
  • python学习之小小爬虫

    学习python一段时间了,写了一个图片的小小爬虫,分享下,不喜勿喷!

    #coding=utf-8
    '''
    Created on 2015-5-22
    
    @author: 悦文
    '''
    
    import re
    import urllib
    
    def getHtml(url): #第一次忘写了参数,⊙�⊙b汗
        html=urllib.urlopen(url) #获取给定网址的页面源代码,是一个对象文件
        pageContent=html.read()  #读取网页文件中的内容
        #html.close() #关闭sockit
        return pageContent #返回读取网页文件中的内容
        #print url.geturl() #打印请求的网址
        #print pageContent
    
    def callbackfunc(blocknum, blocksize, totalsize):
        '''回调函数
        @blocknum: 已经下载的数据块
        @blocksize: 数据块的大小
        @totalsize: 远程文件的大小
        '''
        percent = 100.0 * blocknum * blocksize / totalsize
        if percent > 100:
            percent = 100
            print "--------------------------------------------------------------------------"
            print "                             小图一张已到手                                  "
            print "--------------------------------------------------------------------------"
        print "%.2f%%"% percent
    
    
    def getImg(pageContent,callbackfunc):
        #查找图片的正则表达式
        src=r'zoomfile="(http://img..+.jpg)" file' # @坑1,之前没有加 file,导致从zoomfile开始所有的字符串全都匹配
        srcm=re.compile(src)
        getImgSrc=re.findall(srcm,pageContent)
        #image_test_len=len(getImgSrc)
        #print getImgSrc
        name=260
        #逐条获得图片地址并下载
        for image in getImgSrc:
            urllib.urlretrieve(image,"E:\python\%s.jpg"% name,callbackfunc)
            name+=1
        #return image_test_len
    
    if __name__=='__main__':
        pageContent=getHtml("http://old.nr99.com/thread-123208-1-2.html")
        getImg(pageContent,callbackfunc)
  • 相关阅读:
    poj 2488 DFS
    畅通工程 并查集模版
    KMP 模板
    poj 1426 DFS
    poj 2528 线段数
    poj 3468 线段数 修改区间(点)
    CVPR2012文章阅读(2)A Unified Approach to Salient Object Detection via Low Rank Matrix Recovery
    如何制定目标
    Saliency Map 最新综述
    计算机视觉模式识别重要会议杂志
  • 原文地址:https://www.cnblogs.com/appium/p/4587966.html
Copyright © 2011-2022 走看看