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中使用gzip模块压缩文件的简单教程
Apr 08 Python
python技能之数据导出excel的实例代码
Aug 11 Python
Python读取txt某几列绘图的方法
Oct 14 Python
python3 实现对图片进行局部切割的方法
Dec 05 Python
Python函数装饰器常见使用方法实例详解
Mar 30 Python
Python 格式化打印json数据方法(展开状态)
Feb 27 Python
pandas分组聚合详解
Apr 10 Python
Python爬虫爬取糗事百科段子实例分享
Jul 31 Python
python使用scapy模块实现ARP扫描的过程
Jan 21 Python
python UIAutomator2使用超详细教程
Feb 19 Python
pandas提升计算效率的一些方法汇总
May 30 Python
手把手教你使用TensorFlow2实现RNN
Jul 15 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
CI框架中zip类应用示例
2014/06/17 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
htm调用JS代码
2007/03/15 Javascript
基于jquery实现的表格分页实现代码
2011/06/21 Javascript
关于跨站脚本攻击问题
2011/12/22 Javascript
javascript数组去重方法终极总结
2014/06/05 Javascript
PHP守护进程实例
2015/03/06 Javascript
JavaScript实现俄罗斯方块游戏过程分析及源码分享
2015/03/23 Javascript
js 获取范围内的随机数实例代码
2016/08/02 Javascript
JavaScript下拉菜单功能实例代码
2017/03/01 Javascript
JS如何实现在页面上快速定位(锚点跳转问题)
2017/08/14 Javascript
解决Layui 表单提交数据为空的问题
2018/08/15 Javascript
使用Node搭建reactSSR服务端渲染架构
2018/08/30 Javascript
详解基于Vue,Nginx的前后端不分离部署教程
2018/12/04 Javascript
Node配合WebSocket做多文件下载以及进度回传
2019/11/07 Javascript
vue实现登录、注册、退出、跳转等功能
2020/12/23 Vue.js
Python爬虫之模拟知乎登录的方法教程
2017/05/25 Python
Python单元测试简单示例
2018/07/03 Python
Python 2.7中文显示与处理方法
2018/07/16 Python
python Django编写接口并用Jmeter测试的方法
2019/07/31 Python
python BlockingScheduler定时任务及其他方式的实现
2019/09/19 Python
Python将二维列表list的数据输出(TXT,Excel)
2020/04/23 Python
基于python实现matlab filter函数过程详解
2020/06/08 Python
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
What is EJB
2016/07/22 面试题
机械专业毕业生推荐信范文
2013/11/25 职场文书
办公室前台岗位职责
2014/01/04 职场文书
致全体运动员广播稿
2014/02/01 职场文书
乌鸦喝水教学反思
2014/02/07 职场文书
政工例会汇报材料
2014/08/26 职场文书
不服从上级领导安排的检讨书
2014/09/14 职场文书
卫生院艾滋病宣传活动总结
2015/05/09 职场文书
2015银行年终工作总结范文
2015/05/26 职场文书
2019年让高校“心动”的自荐信
2019/03/25 职场文书
CSS实现单选折叠菜单功能
2021/11/01 HTML / CSS
CSS作用域(样式分割)的使用汇总
2021/11/07 HTML / CSS