Python实现使用request模块下载图片demo示例


Posted in Python onMay 24, 2019

本文实例讲述了Python实现使用request模块下载图片。分享给大家供大家参考,具体如下:

利用流传输下载图片

# -*- 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()

运行结果(在当前目录下下载了一个demo.jpg文件):

Python实现使用request模块下载图片demo示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python根据出生日期获得年龄的方法
Mar 31 Python
简洁的十分钟Python入门教程
Apr 03 Python
简单介绍Python中的filter和lambda函数的使用
Apr 07 Python
python实现可以断点续传和并发的ftp程序
Sep 13 Python
Python 专题六 局部变量、全局变量global、导入模块变量
Mar 20 Python
Python八大常见排序算法定义、实现及时间消耗效率分析
Apr 27 Python
python自动化实现登录获取图片验证码功能
Nov 20 Python
Python如何将图像音视频等资源文件隐藏在代码中(小技巧)
Feb 16 Python
解决Python发送Http请求时,中文乱码的问题
Apr 30 Python
matplotlib基础绘图命令之errorbar的使用
Aug 13 Python
Django如何与Ajax交互
Apr 29 Python
python中的plt.cm.Paired用法说明
May 31 Python
Python实现操纵控制windows注册表的方法分析
May 24 #Python
Django框架会话技术实例分析【Cookie与Session】
May 24 #Python
Django框架中间件(Middleware)用法实例分析
May 24 #Python
python与字符编码问题
May 24 #Python
Python读取stdin方法实例
May 24 #Python
python实践项目之监控当前联网状态详情
May 23 #Python
了解不常见但是实用的Python技巧
May 23 #Python
You might like
PHP中实现进程间通讯
2006/10/09 PHP
在php中取得image按钮传递的name值
2006/10/09 PHP
修改destoon会员公司的伪静态中的com目录的方法
2014/08/21 PHP
php实现Linux服务器木马排查及加固功能
2014/12/29 PHP
Zend Framework创建自己的动作助手详解
2016/03/05 PHP
YII框架学习笔记之命名空间、操作响应与视图操作示例
2019/04/30 PHP
thinkphp框架表单数组实现图片批量上传功能示例
2020/04/04 PHP
js css样式操作代码(批量操作)
2009/10/09 Javascript
js截取中英文字符串、标点符号无乱码示例解读
2014/04/17 Javascript
javascript获取select值的方法分析
2015/07/02 Javascript
举例讲解jQuery对DOM元素的向上遍历、向下遍历和水平遍历
2016/07/07 Javascript
jQuery中get方法用法分析
2016/12/07 Javascript
JS中将多个逗号替换为一个逗号的实现代码
2017/06/23 Javascript
详解Vue 中 extend 、component 、mixins 、extends 的区别
2017/12/20 Javascript
JS实现留言板功能[楼层效果展示]
2017/12/27 Javascript
swiper 解决动态加载数据滑动失效的问题
2018/02/26 Javascript
Node.js命令行/批处理中如何更改Linux用户密码浅析
2018/07/22 Javascript
jquery实现搜索框功能实例详解
2018/07/23 jQuery
详解Vue3.0 前的 TypeScript 最佳入门实践
2019/06/18 Javascript
ES6 Object.assign()的用法及其使用
2020/01/18 Javascript
详解vue或uni-app的跨域问题解决方案
2020/02/21 Javascript
python中enumerate的用法实例解析
2014/08/18 Python
Python实现竖排打印传单手机号码易撕条
2015/03/16 Python
Django中使用Whoosh进行全文检索的方法
2019/03/31 Python
用python实现英文字母和相应序数转换的方法
2019/09/18 Python
python属于解释型语言么
2020/06/15 Python
Python通过len函数返回对象长度
2020/10/22 Python
用python计算文件的MD5值
2020/12/23 Python
入党转预备思想汇报
2014/01/07 职场文书
党员反对四风思想汇报范文
2014/10/25 职场文书
车队安全员岗位职责
2015/02/15 职场文书
2016猴年春节慰问信
2015/11/30 职场文书
《家》读后感:万惜拯救,冷暖自知
2019/09/25 职场文书
python基础详解之if循环语句
2021/04/24 Python
如何使用 resize 实现图片切换预览功能
2021/08/23 HTML / CSS
Pandas实现批量拆分与合并Excel的示例代码
2022/05/30 Python