Requests库,高度封装的http库

import requests

url = 'http://down.sandai.net/thunder9/Thunder9.0.18.448.exe'
filename = url.split('/')[-1] #获取文件名
r = requests.get(url,stream = True) with open(filename,'wb') as f:
p = 0 #下载计数器
chunk_size = 4096 #块大小
try:
while True:
for data in r.iter_content(chunk_size):
p += f.write(data) print('%d' % (p)) except Exception as e:
print(e)
finally:
print('下载完毕!')

urllib库,操作上能比Requests灵活一点,没有特殊需求的话基本没什么差别

import urllib.request

url = 'http://down.sandai.net/thunder9/Thunder9.0.18.448.exe'
resp = urllib.request.urlopen(url)
filename = url.split('/')[-1]
with open(filename,'wb') as f:
p = 0 #下载计数
buffsize = 4096 #块大小
try:
while True:
buff = resp.read(buffsize)
if not buff: #buff为空,即下载完毕,结束循环
break
p += f.write(buff)
print('%d' % p)
except Exception as e:
print(e)
finally:
print('下载完毕!')

还有个一句话的 

import urllib

urllib.urlretrieve(url, ‘test.jpg’)

python 实现文件下载的更多相关文章

  1. python实现文件下载的方法总结

    前端时间遇到一个通过url下载文件的需求,只需要简单的编写一个py脚本即可.从网上搜了下python实现文件下载的方法,总结如下,备查. 以下方法均已测试,环境win8.1  python2.6/2. ...

  2. Python Selenium 文件下载

    Python Selenium 进UI自动化测试时都会遇到文件上传和下载的操作,下面介绍一下文件下载的操作 这里介绍使用FireFox浏览器进行文件下载的操作. 1.设置文件默认下载地址 如下图,fi ...

  3. Python展示文件下载进度条

    前言 大家在用Python写一些小程序的时候,经常都会用到文件下载,对于一些较小的文件,大家可能不太在乎文件的下载进度,因为一会就下载完毕了. 但是当文件较大,比如下载chromedriver的时候, ...

  4. python实现文件下载图片视频

    最近在学习爬虫,在爬取网站时很多时候是需要将图片或视频下载到本地 今天就来说说如何使用urllib将图片保存到本地 以下代码均为win7  python3.6.* 方法一(使用下载函数保存) from ...

  5. Python 批量文件下载

    python文件 批量下载 .图片批量下载 ,批量请求.爬虫 #==================================================================== ...

  6. 【Python】文件下载小助手

    import requests from contextlib import closing class ProgressBar(object): def __init__(self, title, ...

  7. python库文件下载地址(持续更新)

    numpy https://pypi.org/project/numpy/#files PIL https://pypi.org/simple/pillow/ cv2 https://pypi.tun ...

  8. 初识python: 文件下载进度

    (后续待更新...) 使用 request 的 urlretrieve 方法创建"回调函数": 下载进度 详细代码如下: #!/user/bin env python # auth ...

  9. python Django 文件下载示例

    from django.http import StreamingHttpResponse#文件流 def big_file_download(request): # do something... ...

随机推荐

  1. gridview的rowdeleting这个函数总是不执行

    今天在做新闻管理时,管理数据的时候需要弹出确认删除的功能,可是此功能总是不能够实现,调试的时候也执行不到该方法,后来方向是忘记给button加上一个属性: 把CommandName设置为delete. ...

  2. mac brew mysql 启动之后报错

    打开电脑 链接mysql 发现报错,连不上,应该是没自启动, 之前一直用windows电脑,就用mysql start 准备启动下,发现报错, p.p1 { margin: 0.0px 0.0px 0 ...

  3. NFS网络文件系统安装配置

    简介 NFS(Network File System)FS是由Sun开发并发展起来的一项用于在不同机器,不同操作系统之间通过网络共享数据.客户端用mount命令把远程的NFS文件系统挂载到本地即可,操 ...

  4. ANDROID : java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Base64.encodeBase64String in android

    Andriod系统包中现在已经自带加密函数,如果用apache的codec包则会报以上错误,用android.util.Base64以下方法代替org.apache.commons.codec.bin ...

  5. .NET笔试题集(二)

    1.using关键字有什么用?什么是IDisposable? using可以声明namespace的引入,还可以实现非托管资源的释放,实现了IDisposiable的类在using中创建,using结 ...

  6. spring注解 @Transactional

    一.@Transactional所需要的jar包 1.aopalliance.jar  这个包是AOP联盟的API包,里面包含了针对面向切面的接口.(通常Spring等其它具备动态织入功能的框架依赖此 ...

  7. 第五篇——C++实现四则运算

    写一个能自动生成小学四则运算题目的命令行 “软件”, 分别满足下面的各种需求.下面这些需求都可以用命令行参数的形式来指定: a) 除了整数以外,还要支持真分数的四则运算. (例如: 1/6 + 1/8 ...

  8. Install and set JAVA home on MAC OS with commandline

    最近需要在MAC上做一些测试,由于测试机没有安装Java,只能自己安装,由于不能通过图形化界面访问测试机,只能通过命令行的形式来安装JAVA. 1. Download the jre/jdk inst ...

  9. xlwt写入中文操作不成功,提示UnicodeDecodeError: ascii codec can't decode byte ...

    打开xlwt包里的Workbook.py文件,修改Workbook类的__init__方法 将 def __init__(self, encoding='ascii', style_compressi ...

  10. python sqlite 插入的数据含有变量,结果不一致

    def insert(): conn = sqlite3.connect("sqlite.db") print "open database passed" t ...