python实现下载文件的三种方法


Posted in Python onFebruary 09, 2017

Python开发中时长遇到要下载文件的情况,最常用的方法就是通过Http利用urllib或者urllib2模块。

当然你也可以利用ftplib从ftp站点下载文件。此外Python还提供了另外一种方法requests。

下面来看看三种方法是如何来下载zip文件的:

方法一:

import urllib 
import urllib2 
import requests
print "downloading with urllib" 
url = 'https://3water.com//test/demo.zip' 
print "downloading with urllib"
urllib.urlretrieve(url, "demo.zip")

方法二:

import urllib2
print "downloading with urllib2"
url = 'https://3water.com//test/demo.zip' 
f = urllib2.urlopen(url) 
data = f.read() 
with open("demo2.zip", "wb") as code:   
  code.write(data)

方法三:

import requests 
print "downloading with requests"
url = 'https://3water.com/test/demo.zip' 
r = requests.get(url) 
with open("demo3.zip", "wb") as code:
   code.write(r.content)

看起来使用urllib最为简单,一句语句即可。当然你可以把urllib2缩写成:

f = urllib2.urlopen(url) 
with open("demo2.zip", "wb") as code:
  code.write(f.read())

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python pdb调试方法分享
Jan 21 Python
python基础教程之数字处理(math)模块详解
Mar 25 Python
跟老齐学Python之大话题小函数(1)
Oct 10 Python
pygame学习笔记(1):矩形、圆型画图实例
Apr 15 Python
详谈python read readline readlines的区别
Sep 22 Python
Python进度条实时显示处理进度的示例代码
Jan 30 Python
django 在原有表格添加或删除字段的实例
May 27 Python
opencv转换颜色空间更改图片背景
Aug 20 Python
django 扩展user用户字段inlines方式
Mar 30 Python
python 元组的使用方法
Jun 09 Python
Python OpenCV读取中文路径图像的方法
Jul 02 Python
python 如何读、写、解析CSV文件
Mar 03 Python
Python如何实现守护进程的方法示例
Feb 08 #Python
详解Python中表达式i += x与i = i + x是否等价
Feb 08 #Python
Python实现的多线程http压力测试代码
Feb 08 #Python
Python实现定时任务
Feb 08 #Python
python使用matplotlib绘制柱状图教程
Feb 08 #Python
Python实现简单的多任务mysql转xml的方法
Feb 08 #Python
python使用matplotlib绘制折线图教程
Feb 08 #Python
You might like
这东西价格,可以买几台TECSUN S-2000
2021/03/02 无线电
PHP中SimpleXML函数用法分析
2014/11/26 PHP
twig里使用js变量的方法
2016/02/05 PHP
php观察者模式应用场景实例详解
2017/02/03 PHP
php基于PDO实现功能强大的MYSQL封装类实例
2017/02/27 PHP
PHP实现的多维数组去重操作示例
2018/07/21 PHP
Laravel实现批量更新多条数据
2020/04/06 PHP
js动态在form上插入enctype=multipart/form-data的问题
2012/05/24 Javascript
JS添加删除一组文本框并对输入信息加以验证判断其正确性
2013/04/11 Javascript
javascript:;与javascript:void(0)使用介绍
2013/06/05 Javascript
js模仿jquery的写法示例代码
2013/06/16 Javascript
文本框回车提交与禁止提交示例
2013/09/27 Javascript
jquery map方法使用示例
2014/04/23 Javascript
Nodejs中读取中文文件编码问题、发送邮件和定时任务实例
2015/01/01 NodeJs
浅析BootStrap中Modal(模态框)使用心得
2016/12/24 Javascript
JS实现标签页切换效果
2017/05/04 Javascript
使用prop解决一个checkbox选中后再次选中失效的问题
2017/07/05 Javascript
JS+HTML5实现图片在线预览功能
2017/07/22 Javascript
node使用promise替代回调函数
2018/05/07 Javascript
vue的style绑定background-image的方式和其他变量数据的区别详解
2018/09/03 Javascript
详解微信小程序获取当前时间及日期的方法
2019/04/28 Javascript
微信小程序的mpvue框架快速上手指南
2019/05/15 Javascript
微信小程序获取用户信息及手机号(后端TP5.0)
2019/09/12 Javascript
videocapture库制作python视频高速传输程序
2013/12/23 Python
Python中使用partial改变方法默认参数实例
2015/04/28 Python
Python中import导入不同目录的模块方法详解
2020/02/18 Python
windows上彻底删除jupyter notebook的实现
2020/04/13 Python
英国医生在线预约:Top Doctors
2019/10/30 全球购物
PHP面试题附答案
2015/11/28 面试题
请说出你所知道的线程同步的方法
2013/04/19 面试题
正隆泰信息技术有限公司上机题
2012/06/14 面试题
保安公司服务承诺书
2014/05/28 职场文书
模具设计与制造专业求职信
2014/07/19 职场文书
2014年酒店服务员工作总结
2014/12/08 职场文书
Android studio 简单计算器的编写
2022/05/20 Java/Android
MySQL详细讲解变量variables的用法
2022/06/21 MySQL