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中操作符重载用法分析
Apr 29 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
Feb 11 Python
Python使用selenium实现网页用户名 密码 验证码自动登录功能
May 16 Python
python实现彩色图转换成灰度图
Jan 15 Python
Python3.4学习笔记之类型判断,异常处理,终止程序操作小结
Mar 01 Python
python操作日志的封装方法(两种方法)
May 23 Python
python实现监控阿里云账户余额功能
Dec 16 Python
python如何调用字典的key
May 25 Python
Python爬虫requests库多种用法实例
May 28 Python
详解Python爬虫爬取博客园问题列表所有的问题
Jan 18 Python
详解用Python把PDF转为Word方法总结
Apr 27 Python
Python异常类型以及处理方法汇总
Jun 05 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
PHP学习之输出字符串(echo,print,printf,print_r和var_dump)
2011/04/17 PHP
win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
2014/08/15 PHP
PHP程序员必须清楚的问题汇总
2014/12/18 PHP
html页面显示年月日时分秒和星期几的两种方式
2013/08/20 Javascript
jquery 删除字符串最后一个字符的方法解析
2014/02/11 Javascript
JS实现复制内容到剪贴板功能兼容所有浏览器(推荐)
2016/06/17 Javascript
vue实现简单实时汇率计算功能
2017/01/15 Javascript
深入浅析AngularJS中的一次性数据绑定 (bindonce)
2017/05/11 Javascript
js+html5实现复制文字按钮
2017/07/15 Javascript
Vuex 进阶之模块化组织详解
2018/01/12 Javascript
Vue的事件响应式进度条组件实例详解
2018/02/04 Javascript
JavaScript运行原理分析
2018/02/09 Javascript
详解如何在vue-cli中使用vuex
2018/08/07 Javascript
node.js之基础加密算法模块crypto详解
2018/09/11 Javascript
Python中的闭包总结
2014/09/18 Python
Python的Tornado框架的异步任务与AsyncHTTPClient
2016/06/27 Python
浅谈pyqt5中信号与槽的认识
2019/02/17 Python
python将字典列表导出为Excel文件的方法
2019/09/02 Python
原来我一直安装 Python 库的姿势都不对呀
2019/11/11 Python
python 爬取B站原视频的实例代码
2020/09/09 Python
python regex库实例用法总结
2021/01/03 Python
SmartBuyGlasses中国:唯视良品(销售名牌太阳镜、墨镜和眼镜框)
2017/07/03 全球购物
美国职棒大联盟的官方手套、球和头盔:Rawlings
2020/02/15 全球购物
木马的传播途径主要有哪些
2016/04/08 面试题
廉政教育心得体会
2014/01/01 职场文书
保安的辞职报告怎么写
2014/01/20 职场文书
告诉你怎样写创业计划书
2014/01/27 职场文书
同学聚会主持词
2014/03/18 职场文书
连带责任保证书
2014/04/29 职场文书
书香校园建设方案
2014/05/02 职场文书
民事授权委托书范文
2014/08/02 职场文书
2014年残疾人工作总结
2014/12/06 职场文书
OpenCV全景图像拼接的实现示例
2021/06/05 Python
68行Python代码实现带难度升级的贪吃蛇
2022/01/18 Python
WINDOWS下安装mysql 8.x 的方法图文教程
2022/04/19 MySQL
Redis实现订单过期删除的方法步骤
2022/06/05 Redis