您的位置:首页 > 编程语言 > Python开发

python request 下载 图片 demo

2017-04-06 07:43 351 查看
利用流传输下载图片

# -*- coding: utf-8 -*-
import requests

def download_image():
"""
demo:下载图片
:return:
"""
headers = {"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36"}
url = "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1491366667515&di=8dad3d86740af2c49d3d0461cfd81f63&imgtype=0&src=http%3A%2F%2Fhdn.xnimg.cn%2Fphotos%2Fhdn521%2F20120528%2F1615%2Fh_main_LBxi_2917000000451375.jpg"
response = requests.get(url, headers=headers, stream=True)
#print str(response.text).decode('ascii').encode('gbk')
with open('demo.jpg', 'wb') as fd:
for chunk in response.iter_content(128):
fd.write(chunk)

download_image()

def download_image_improved():
"""demo: 下载图片"""
#伪造headers信息
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36"}
#限定URL
url = "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1491366667515&di=8dad3d86740af2c49d3d0461cfd81f63&imgtype=0&src=http%3A%2F%2Fhdn.xnimg.cn%2Fphotos%2Fhdn521%2F20120528%2F1615%2Fh_main_LBxi_2917000000451375.jpg"
response = requests.get(url, headers=headers, stream=True)
from contextlib import closing
#用完流自动关掉
with closing(requests.get(url, headers=headers, stream=True)) as response:
#打开文件
with open('demo1.jpg', 'wb') as fd:
#每128写入一次
for chunk in response.iter_content(128):
fd.write(chunk)

download_image_improved()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: