python抓取网页图片并放到指定文件夹

 更新时间:2014年04月24日 10:13:54   作者:  
这篇文章主要介绍了python抓取网页图片并放到指定文件夹,需要的朋友可以参考下

python抓取网站图片并放到指定文件夹

复制代码 代码如下:

# -*- coding=utf-8 -*-
import urllib2
import urllib
import socket
import os
import re
def Docment():
    print u'把文件存在E:\Python\图(请输入数字或字母)'
    h=raw_input()
    path=u'E:\Python\图'+str(h)
    if not os.path.exists(path):
        os.makedirs(path)
    return path
def getallurl(html):
    reg=r"a href='(.*?\.htm)'"
    allurl= re.compile(reg)
    allList = re.findall(allurl,html)
    return allList
def getHTML(url):
    url=url
    req_header = {'User-Agent':'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'}
    req_timeout = 20
    html='cuowu'
    try:
        req = urllib2.Request(url,None,req_header)
        resp = urllib2.urlopen(req,None,req_timeout)
        html = resp.read()
    except urllib2.URLError as e:
        print e.message
    except socket.timeout as e:
        getHTML(url,fu)
    return html
def getImg(html,path):
    reg = r'img class=IMG_show border=0 src=(.*?\.jpg)'
    imgre= re.compile(reg)
    imgList = re.findall(imgre, html)
    if imgList:
        print 'ghasghg',path
        for imgurl in imgList:
            print imgurl
            content2=urllib2.urlopen(imgurl).read()
            with open(path+'/'+imgurl[-7:],'wb') as code:
                code.write(content2)
    else:
        return 0
def getallurl(html):
    reg=r"a href='(.*?\.htm)'"
    allurl= re.compile(reg)
    allList = re.findall(allurl,html)
    return allList
j=1
i=0
print u'请输入网址:'
ul=raw_input()
print u'开始下载'
print u'第'+str(j)+u'页'
html=getHTML(ul)
allList=getallurl(html)
path=Docment()
getImg(html,path)
while i<len(allList):
    for lis in allList:
        l=lis[i]
        url=r'http://www.umei.cc/p/gaoqing/rihan/'+lis
        i=i+1
        j=j+1
        html=getHTML(url)
        getImg(html,path)
        print u'第'+str(j)+u'页'
    else:
        print u'下载完毕'

相关文章

  • python上传时包含boundary时的解决方法

    python上传时包含boundary时的解决方法

    这篇文章主要介绍了python上传时包含boundary时的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • Python使用missingno模块轻松处理数据缺失

    Python使用missingno模块轻松处理数据缺失

    missingno是一个基于Python的开源数据可视化工具,旨在帮助数据分析师和科学家更好地理解和处理数据缺失,下面我们就来看看如何使用missingno处理数据缺失吧
    2024-02-02
  • python使用隐式循环快速求和的实现示例

    python使用隐式循环快速求和的实现示例

    这篇文章主要介绍了python使用隐式循环快速求和的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • SpringBoot中的@MessageMapping注解详解

    SpringBoot中的@MessageMapping注解详解

    这篇文章主要介绍了SpringBoot中的@MessageMapping注解详解,Spring Boot 提供了对 WebSocket 的支持,其中 @MessageMapping 注解是一个常用的注解,它可以将一个 Java 方法标记为 WebSocket 的消息处理器,需要的朋友可以参考下
    2023-08-08
  • 浅谈python中scipy.misc.logsumexp函数的运用场景

    浅谈python中scipy.misc.logsumexp函数的运用场景

    下面小编就为大家带来一篇浅谈python中scipy.misc.logsumexp函数的运用场景。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • Keras框架中的epoch、bacth、batch size、iteration使用介绍

    Keras框架中的epoch、bacth、batch size、iteration使用介绍

    这篇文章主要介绍了Keras框架中的epoch、bacth、batch size、iteration使用介绍,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • python如何通过实例方法名字调用方法

    python如何通过实例方法名字调用方法

    这篇文章主要为大家详细介绍了python如何通过实例方法名字调用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • Python爬虫新手入门之初学lxml库

    Python爬虫新手入门之初学lxml库

    这篇文章主要给大家介绍了关于Python爬虫新手入门之初学lxml库的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • Python无损音乐搜索引擎实现代码

    Python无损音乐搜索引擎实现代码

    这篇文章主要介绍了Python无损音乐搜索引擎的实现代码,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-02-02
  • 基于python实现在excel中读取与生成随机数写入excel中

    基于python实现在excel中读取与生成随机数写入excel中

    最近接个项目,项目要求是这样的:在一份已知的excel表格中读取学生的学号与姓名,再将这些数据放到新的excel表中的第一列与第二列,最后再生成随机数作为学生的考试成绩,具体实现代码大家参考下本文
    2018-01-01

最新评论