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


Posted in Python onApril 24, 2014

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 相关文章推荐
python实现堆栈与队列的方法
Jan 15 Python
Python爬取网页中的图片(搜狗图片)详解
Mar 23 Python
Django rest framework基本介绍与代码示例
Jan 26 Python
python抓取网页中链接的静态图片
Jan 29 Python
Python3之读取连接过的网络并定位的方法
Apr 22 Python
python实现在图片上画特定大小角度矩形框
Oct 24 Python
python打包生成的exe文件运行时提示缺少模块的解决方法
Oct 31 Python
Python中实现单例模式的n种方式和原理
Nov 14 Python
Python中使用__new__实现单例模式并解析
Jun 25 Python
基于Django signals 信号作用及用法详解
Mar 28 Python
详解Python中openpyxl模块基本用法
Feb 23 Python
python 调用js的四种方式
Apr 11 Python
python字符串替换示例
Apr 24 #Python
python自动安装pip
Apr 24 #Python
python网络编程示例(客户端与服务端)
Apr 24 #Python
python使用PyFetion来发送短信的例子
Apr 22 #Python
Python BeautifulSoup中文乱码问题的2种解决方法
Apr 22 #Python
python中使用smtplib和email模块发送邮件实例
Apr 22 #Python
python用字典统计单词或汉字词个数示例
Apr 22 #Python
You might like
兼容性最强的PHP生成缩略图的函数代码(修改版)
2011/01/18 PHP
巧用php中的array_filter()函数去掉多维空值的代码分享
2012/09/07 PHP
php导入导出excel实例
2013/10/25 PHP
php 启动报错如何解决
2014/01/17 PHP
php采用file_get_contents代替使用curl实例
2014/11/07 PHP
PHP date函数常用时间处理方法
2015/05/11 PHP
学习php设计模式 php实现享元模式(flyweight)
2015/12/07 PHP
如何正确配置Nginx + PHP
2016/07/15 PHP
Laravel4中的Validator验证扩展用法详解
2016/07/26 PHP
php 一维数组的循环遍历实现代码
2017/04/10 PHP
PHP基于Closure类创建匿名函数的方法详解
2017/08/17 PHP
PDO::prepare讲解
2019/01/29 PHP
Laravel (Lumen) 解决JWT-Auth刷新token的问题
2019/10/24 PHP
一步一步教你写一个jQuery的插件教程(Plugin)
2009/09/03 Javascript
扩展easyui.datagrid,添加数据loading遮罩效果代码
2010/11/02 Javascript
jquery在Chrome下获取图片的长宽问题解决
2013/03/20 Javascript
JavaScript实现动态创建CSS样式规则方案
2014/09/06 Javascript
JavaScript实现MIPS乘法模拟的方法
2015/04/17 Javascript
JQUERY实现网页右下角固定位置展开关闭特效的方法
2015/07/27 Javascript
JQuery实现图片轮播效果
2015/09/15 Javascript
深入浅析JavaScript中with语句的理解
2016/05/12 Javascript
AngularJS基础 ng-repeat 指令简单示例
2016/08/03 Javascript
bootstrap flask登录页面编写实例
2016/11/01 Javascript
JavaScript如何实现图片懒加载(lazyload) 提高用户体验(增强版)
2016/11/30 Javascript
Angular 4.X开发实践中的踩坑小结
2017/07/04 Javascript
Python数据库的连接实现方法与注意事项
2016/02/27 Python
Python探索之实现一个简单的HTTP服务器
2017/10/28 Python
python生成二维码的实例详解
2017/10/29 Python
解决Pycharm界面的子窗口不见了的问题
2019/01/17 Python
python实现拼图小游戏
2020/02/22 Python
神路信息Java面试题目
2013/03/31 面试题
一套SQL笔试题
2016/08/14 面试题
什么是makefile? 如何编写makefile?
2012/08/08 面试题
面试通知单大全
2015/04/20 职场文书
刑事撤诉申请书
2015/05/18 职场文书
2015教师个人德育工作总结
2015/07/22 职场文书