Python爬取网络图片

代码:

import  urllib
import  urllib.request
import re
#打开网页,下载器
def open_html ( url):
    require=urllib.request.Request(url)
    reponse=urllib.request.urlopen(require)
    html=reponse.read()
    return html
#下载图片
def load_image(html):
    regx='http://[\S]*jpg'
    pattern=re.compile(regx)
    get_image=re.findall(pattern,repr(html))

    num=1
    for img in get_image:
        photo=open_html(img)
        
        with open(r'E:\Photo\%s.jpg'%num,'wb') as f:
            print('开始下载图片')
            f.write(photo)
            print('正在下载第%s张图片'%num)
            f.close()
        num=num+1
    if num>1:
        print('下载成功!!!')
    else:
        print('下载失败!!!')

url='http://www.qiqipu.com/'
html=open_html(url)
load_image(html)

执行结果:

 

 注意:

  在运行之前,必须要有路径(文件夹):E:\Photo\

  如果网站是HTTPS可以将正则中的http换为HTTPS,可以再定义一个下载图片的函数

  如果想要下载jpg、png、gif等多种格式的图片可以将正则中的jpg换为对应格式,也可以使用元组定义多种格式后遍历

我这里只要jpg就可以,就不改了,大家可以自己改下

posted @ 2018-04-01 10:20  feiquan  阅读(1195)  评论(0编辑  收藏  举报
如果是此文是转载文章,本人会附上转载链接,此篇文章的版权归原创作者所属,如果侵权请与我联系,我会删除此文。

若没有标明转载链接,此篇文章属于本人的原创文章,其版权所属:
作者:feiquan
出处:http://www.cnblogs.com/feiquan/
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
大家写文都不容易,请尊重劳动成果~ 这里谢谢大家啦(*/ω\*)