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之数据类型总结
Sep 24 Python
Python返回真假值(True or False)小技巧
Apr 10 Python
selenium+python设置爬虫代理IP的方法
Nov 29 Python
Python3非对称加密算法RSA实例详解
Dec 06 Python
python退出命令是什么?详解python退出方法
Dec 10 Python
Django 创建/删除用户的示例代码
Jul 24 Python
python hashlib加密实现代码
Oct 17 Python
使用Python制作新型冠状病毒实时疫情图
Jan 28 Python
python Django 反向访问器的外键冲突解决
May 20 Python
python代码如何注释
Jun 01 Python
Django REST Framework 分页(Pagination)详解
Nov 30 Python
python读取mat文件生成h5文件的实现
Jul 15 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
实时抓取YAHOO股票报价的代码
2006/10/09 PHP
PHP UTF8编码内的繁简转换类
2009/07/20 PHP
解析PayPal支付接口的PHP开发方式
2010/11/28 PHP
thinkphp多层MVC用法分析
2015/12/30 PHP
Laravel 5.3 学习笔记之 安装
2016/08/28 PHP
Laravel中的chunk组块结果集处理与注意问题
2018/08/15 PHP
PHP上传图片到数据库并显示的实例代码
2019/12/20 PHP
javascript实现简单的Map示例介绍
2013/12/23 Javascript
解决jquery插件冲突的问题
2014/01/23 Javascript
jQuery实时显示鼠标指针位置和键盘ASCII码
2016/03/28 Javascript
关于JavaScript数组你所不知道的3件事
2016/08/24 Javascript
js中常用的Math方法总结
2017/01/12 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
2017/02/16 Javascript
jq checkbox 的全选并ajax传参的实例
2017/04/01 Javascript
js微信分享实现代码
2020/10/11 Javascript
Three.js加载外部模型的教程详解
2017/11/10 Javascript
微信小程序实现树莓派(raspberry pi)小车控制
2020/02/12 Javascript
在Python中使用SimpleParse模块进行解析的教程
2015/04/11 Python
Windows下的Jupyter Notebook 安装与自定义启动(图文详解)
2018/02/21 Python
如何使用Python实现自动化水军评论
2019/06/26 Python
python实现图片中文字分割效果
2019/07/22 Python
对python中的装包与解包实例详解
2019/08/24 Python
python图形开发GUI库pyqt5的基本使用方法详解
2020/02/14 Python
django rest framework serializer返回时间自动格式化方法
2020/03/31 Python
详解CSS 3 中的 calc() 方法
2018/01/12 HTML / CSS
新百伦折扣店:Joe’s New Balance Outlet
2016/08/20 全球购物
澳大利亚时尚前卫设计师珠宝在线:Amber Sceats
2017/10/04 全球购物
在Ajax应用中信息是如何在浏览器和服务器之间传递的
2016/05/31 面试题
《将心比心》教学反思
2014/04/08 职场文书
物流专业专科生职业生涯规划书
2014/09/14 职场文书
2014社会治安综合治理工作总结
2014/12/04 职场文书
离婚协议书的范本
2015/01/27 职场文书
农民工工资支付承诺书
2015/05/04 职场文书
初一语文教学反思
2016/03/03 职场文书
JavaScript 语句之常用 for 循环详解
2021/03/29 Javascript
python playwrigh框架入门安装使用
2022/07/23 Python