Python爬取网络图片

直接贴代码

    

# coding=UTF-8
import urllib
import re

#下载图片
def getImg(html):
    # 正则表达式re,判断网页中图片的位置
    reg = 'src="(.+?\.jpg)" alt='
    imgre = re.compile(reg)
    # 得到位置的集合
    imglist = re.findall(imgre, html)
    # 下载图片的名称
    x = 0
    # 便利下载图片
    for imgurl in imglist:
        # print(x)
        urllib.urlretrieve(imgurl, '%s.jpg' % x)
        x += 1

#开始执行
# 网络地址
page = urllib.urlopen("http://www.mmjpg.com/tag/xiaoqingxin")
html = page.read()
getImg(html)

运行结果,图片缓存到默认地址(地址可更改)  

    代码分析    

       第一行代码代表 支持中文,要不然打印中文日志会报错

        然后是(引包)

            import urllib(用于请求网络)

            import re(正则表达式用于过滤图片)

        第二行getImg(html)下载根据html下载图片的函数

        其中re.complie()和re.findall得到图片位置的集合

        通过urllib.urlretrieve(图片url,存储地址)

        第三行代码通过urllib.urlopen("网址")得到html源文件

        page.read()转为string字符串

        通过getImg(网页地址得到的string)

  

    注意:图片缓存地址默认为项目的包下,可修改


猜你喜欢

转载自blog.csdn.net/weixin_40251830/article/details/80198126