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

yipeiwu_com6年前Python基础

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

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

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

方法一:

import urllib 
import urllib2 
import requests
print "downloading with urllib" 
url = '//www.jb51.net//test/demo.zip' 
print "downloading with urllib"
urllib.urlretrieve(url, "demo.zip")

方法二:

import urllib2
print "downloading with urllib2"
url = '//www.jb51.net//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 = '//www.jb51.net/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实现短网址和数字相互转换的方法

本文实例讲述了python3实现短网址和数字相互转换的方法。分享给大家供大家参考。具体实现方法如下: import math import decimal def convert_t...

Python获取暗黑破坏神3战网前1000命位玩家的英雄技能统计

Python获取暗黑破坏神3战网前1000命位玩家的英雄技能统计

说实在的个人对游戏并没有多大的兴趣,但唯独对暴雪的Diablo系列很有感情,去年年初开始玩Diablo3,断断续续,感觉最麻烦的是选择技能,每次版本更新可能都有更优的build,这对于我...

Python 3.8正式发布重要新功能一览

Python 3.8正式发布重要新功能一览

Python3.8有哪些你要关注的新内容?  Python3.8 都有哪些新功能,在文档手册中,大家可以有一个概览。这么多新内容,哪些是大家最先要关注一下的呢?下面,营长就带...

Python自定义线程类简单示例

Python自定义线程类简单示例

本文实例讲述了Python自定义线程类。分享给大家供大家参考,具体如下: 一. 代码 # -*- coding:utf-8 -*- #! python2 import threadi...

Django实现微信小程序的登录验证功能并维护登录态

Django实现微信小程序的登录验证功能并维护登录态

这次自己做了一个小程序来玩,在登录方面一直有些模糊,网上看了很多文档后,得出以下一种解决方案。 环境说明: 1、小程序只需要拿到openid,其他信息不存储。 2、Django自带的Us...