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 相关文章推荐
在Debian下配置Python+Django+Nginx+uWSGI+MySQL的教程
Apr 25 Python
日常整理python执行系统命令的常见方法(全)
Oct 22 Python
Linux 下 Python 实现按任意键退出的实现方法
Sep 25 Python
Python实现Linux的find命令实例分享
Jun 04 Python
Python实现的选择排序算法示例
Nov 29 Python
Win10下python3.5和python2.7环境变量配置教程
Sep 18 Python
python字典改变value值方法总结
Jun 21 Python
Pytorch 神经网络—自定义数据集上实现教程
Jan 07 Python
Python+OpenCV实现将图像转换为二进制格式
Jan 09 Python
python模拟预测一下新型冠状病毒肺炎的数据
Feb 01 Python
Python sorted排序方法如何实现
Mar 31 Python
python pyhs2 的安装操作
Apr 07 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对字符串的递增运算分析
2010/08/08 PHP
PHP实现微信小程序用户授权的工具类示例
2019/03/05 PHP
js prototype 格式化数字 By shawl.qiu
2007/04/02 Javascript
javascript document.referrer 用法
2009/04/30 Javascript
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
2009/12/07 Javascript
js仿百度有啊通栏展示效果实现代码
2013/05/28 Javascript
jquery比较简洁的软键盘特效实现方法
2015/03/19 Javascript
不想让浏览器运行javascript脚本的方法
2015/11/20 Javascript
详解微信小程序开发之下拉刷新 上拉加载
2016/11/24 Javascript
详解javascript获取url信息的常见方法
2016/12/19 Javascript
详解基于webpack和vue.js搭建开发环境
2017/04/05 Javascript
Vue项目webpack打包部署到服务器的实例详解
2017/07/17 Javascript
vue 动态改变静态图片以及请求网络图片的实现方法
2018/02/07 Javascript
Vue.js最佳实践(五招助你成为vuejs大师)
2018/05/04 Javascript
vue中选项卡点击切换且能滑动切换功能的实现代码
2018/11/25 Javascript
Vue自定义全局Toast和Loading的实例详解
2019/04/18 Javascript
解决Vue打包后访问图片/图标不显示的问题
2019/07/25 Javascript
Vue 中 template 有且只能一个 root的原因解析(源码分析)
2020/04/11 Javascript
解决Vue router-link绑定事件不生效的问题
2020/07/22 Javascript
Jquery Fade用法详解
2020/11/06 jQuery
微信小程序onShareTimeline()实现分享朋友圈
2021/01/07 Javascript
[36:19]2018DOTA2亚洲邀请赛 小组赛 A组加赛 Newbee vs LGD
2018/04/03 DOTA
python socket多线程通讯实例分析(聊天室)
2016/04/06 Python
Python 模拟登陆的两种实现方法
2017/08/10 Python
Python程序打包工具py2exe和PyInstaller详解
2019/06/28 Python
python子线程退出及线程退出控制的代码
2019/10/16 Python
使用TensorFlow-Slim进行图像分类的实现
2019/12/31 Python
巴西食品补充剂在线零售商:Músculos na Web
2017/08/07 全球购物
TripAdvisor斯洛伐克:阅读评论、比较价格和酒店预订
2018/04/25 全球购物
生物科学系大学生的自我评价
2013/12/20 职场文书
cf搞笑广告词
2014/03/14 职场文书
企业口号大全
2014/06/12 职场文书
2016元旦主持人经典开场白台词
2015/12/03 职场文书
Pandas-DataFrame知识点汇总
2022/03/16 Python
Android基于Fresco实现圆角和圆形图片
2022/04/01 Java/Android
解决Mysql中的innoDB幻读问题
2022/04/29 MySQL