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 相关文章推荐
Python3.x和Python2.x的区别介绍
Feb 12 Python
利用python批量给云主机配置安全组的方法教程
Jun 21 Python
浅谈django model postgres的json字段编码问题
Jan 05 Python
python自动查询12306余票并发送邮箱提醒脚本
May 21 Python
深入了解Python iter() 方法的用法
Jul 11 Python
Python3操作Excel文件(读写)的简单实例
Sep 02 Python
django-crontab 定时执行任务方法的实现
Sep 06 Python
Python3.7安装keras和TensorFlow的教程图解
Jun 18 Python
python实现银行实战系统
Feb 26 Python
Python实现进度条和时间预估的示例代码
Jun 02 Python
浅谈keras通过model.fit_generator训练模型(节省内存)
Jun 17 Python
Python调用shell cmd方法代码示例解析
Jun 18 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
德生S2000收音机更换“钕铁硼”全频扬声器
2021/03/02 无线电
php利用cookie实现访问次数统计代码
2011/05/19 PHP
PHP 时间日期操作实战
2011/08/26 PHP
php中curl使用指南
2015/02/05 PHP
PHP编程快速实现数组去重的方法详解
2017/07/22 PHP
一些javascript一些题目的解析
2010/12/25 Javascript
javascript权威指南 学习笔记之null和undefined
2011/09/25 Javascript
JQuery对表单元素的基本操作使用总结
2014/07/18 Javascript
jQuery Raty 一款不错的星级评分插件
2016/08/24 Javascript
JavaScript 继承详解(五)
2016/10/11 Javascript
H5手机端多文件上传预览插件
2017/04/21 Javascript
React + webpack 环境配置的方法步骤
2017/09/07 Javascript
react学习笔记之state以及setState的使用
2017/12/07 Javascript
jQuery EasyUI window窗口使用实例代码
2017/12/25 jQuery
JS实现的简单折叠展开动画效果示例
2018/04/28 Javascript
js中获取URL参数的共用方法getRequest()方法实例详解
2018/10/24 Javascript
JavaScript常用内置对象用法分析
2019/07/09 Javascript
JS实现点餐自动选择框(案例分析)
2019/12/10 Javascript
jQuery实现聊天对话框
2020/02/08 jQuery
vue中 v-for循环的用法详解
2020/02/19 Javascript
安装Python的web.py框架并从hello world开始编程
2015/04/25 Python
Python实现类的创建与使用方法示例
2017/07/25 Python
python中的计时器timeit的使用方法
2017/10/20 Python
Python subprocess模块常见用法分析
2018/06/12 Python
解决Python下json.loads()中文字符出错的问题
2018/12/19 Python
对DJango视图(views)和模版(templates)的使用详解
2019/07/17 Python
Django单元测试工具test client使用详解
2019/08/02 Python
在python中实现求输出1-3+5-7+9-......101的和
2020/04/02 Python
python3 中时间戳、时间、日期的转换和加减操作
2020/07/14 Python
如何用Python绘制3D柱形图
2020/09/16 Python
CSS3样式linear-gradient的使用实例
2017/01/16 HTML / CSS
HTML5无刷新改变当前url的代码
2017/03/15 HTML / CSS
美国面料纺织品商城:Fabric.com
2017/06/28 全球购物
森海塞尔美国官网:Sennheiser耳机与耳麦
2017/07/19 全球购物
三严三实民主生活会发言稿
2014/10/13 职场文书
2014年工会工作总结
2014/11/12 职场文书