大数据 爬虫Python AI Sql

Python笔记——下载图片的两种方法

2018-10-06  本文已影响4人  振礼硕晨

第一种:使用urllib.request库中的urlretrieve方法

1.示例代码:
from urllib.request import urlretrieve      # 引入库
url = 'http://pic1.win4000.com/wallpaper/2017-10-31/59f82773524ee.jpg'      # 要下载的图片的地址
urlretrieve(url, './girl.jpg')  # 保存到本地,并设置路径
2.方法详解

urllib模块提供的urlretrieve()函数,可直接将远程数据下载到本地,语法格式如下:

urlretrieve(url, filename=None, reporthook=None, data=None)

第二种:请求图片的流数据,写入到本地文件,完成下载

1.示例代码:
import requests  # 引入相关库

url = 'http://pic1.win4000.com/wallpaper/2017-10-31/59f82773524ee.jpg'  # 要下载的图片的地址

r = requests.get(url)  # 请求图片的数据

# 将图片的流数据写入到girl_2.jpg文件中
with open('./girl_2.jpg', 'wb') as img:
    img.write(r.content)
2.方法详解

无论是图片还是.mp3、.mp4,.revb等文件,他们在网络上传输的时候,都是采用编码后的流数据,我们将这些流数据请求下来,然后写入到对应的文件中,就相当于把这些文件下载下来。

在本例中,我们使用reques.get()方法可以得到Response对象r,然后使用r.content就可以获取r编码后的流数据。将其写入到girl_2.jpg,就可以成功将该图片下载到本地。

这是简单的将网络上的图片下载到本地的方法,你可以在这个基础之上进行扩展,比如下载小说、电影等文件。
或者是对下载的图片进行处理,保存到本地特定的文件夹或给出更有规律的命名。
发挥你的创意开始进行创作吧。

上一篇 下一篇

猜你喜欢

热点阅读