python requests下载文件_Python3 用 requests 2.x 下载大文件

OS:Windows 10 x64

Python:3.6.5 x64

requests:2.18.4

【代码】# encoding=utf-8

# author: walker

# date: 2018-06-11

# summary: 使用 requests 下载大文件

import time

import requests

# 下载一个大文件

def DownOneFile(srcUrl, localFile):

print('%s\n --->>>\n %s' % (srcUrl, localFile))

startTime = time.time()

with requests.get(srcUrl, stream=True) as r:

contentLength = int(r.headers['content-length'])

line = 'content-length: %dB/ %.2fKB/ %.2fMB'

line = line % (contentLength, contentLength/1024, contentLength/1024/1024)

print(line)

downSize = 0

with open(localFile, 'wb') as f:

for chunk in r.iter_content(8192):

if chunk:

f.write(chunk)

downSize += len(chunk)

line = '%d KB/s - %.2f MB, 共 %.2f MB'

line = line % (downSize/1024/(time.time()-startTime), downSize/1024/1024, contentLength/1024/1024)

print(line, end='\r')

if downSize >= contentLength:

break

timeCost = time.time() - startTime

line = '共耗时: %.2f s, 平均速度: %.2f KB/s'

line = line % (timeCost, downSize/1024/timeCost)

print(line)

if __name__ == '__main__':

srcUrl = r'http://cachefly.cachefly.net/100mb.test'

localFile = r'D:\Python3Project\test\out\out.test'

DownOneFile(srcUrl, localFile)

【效果图】

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

【相关阅读】

***walker ***

原文地址:http://blog.51cto.com/walkerqt/2128057

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值