介绍
本篇内容主要讲解“Python HTTP如何实现下载并显示进度功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python HTTP如何实现下载并显示进度功能”吧!
下面的Python脚本中利用请求下载文件并写入到文件系统,利用<代码> progressbar 代码>模块显示下载进度条。
其中利用请求模块下载文件可以直接下载,不需要使用开放的方法,例如:
import urllib import requests.packages.urllib3 requests.packages.urllib3.disable_warnings () 时间=url “https://raw.githubusercontent.com/racaljk/hosts/master/hosts" urllib.urlretrieve (url,文件名=癶osts")
下面的例子是题目中完整的例子,其中注释的部分是进度条的另一种写法,显示当前处理过的行数。
# !/usr/bin/python #,编码:utf - 8 #,- *安康;编码:utf8 - * - “““ Created by  PyCharm。 文件:,,,,,,,,LinuxBashShellScriptForOps: download_file2.py 用户:,,,,,,,国栋 Create 日期:,,,2016/9/14 Create 时间:9点40分,,, ,“““ import 请求 import progressbar import requests.packages.urllib3 requests.packages.urllib3.disable_warnings () 时间=url “https://raw.githubusercontent.com/racaljk/hosts/master/hosts" 时间=response requests.request (“GET",, url,,流=True,, data=https://www.yisu.com/zixun/None,标题=没有) save_path="/tmp/主机" 内容长度total_length=int (response.headers.get (“”)) 张开(save_path wb) f: #小部件=[加工:,progressbar.Counter(),“行(“,progressbar.Timer (),“)”) # pbar=progressbar.ProgressBar(小部件=小部件) #在pbar块((我因为我在response.iter_content (chunk_size=1))): #如果块: # f.write(块) # f.flush () 小部件=[进展:,progressbar.Percentage (), ' ', progressbar。栏(标志=' # ',左='[’,对吧=']'), “progressbar.ETA ()、“progressbar.FileTransferSpeed ()) pbar=progressbar。ProgressBar(小部件=小部件,maxval=total_length) .start () 块的response.iter_content (chunk_size=1): 如果块: f.write(块) f.flush () pbar.update (len(块)+ 1) pbar.finish ()
运行结果:
到此,相信大家对“Python HTTP如何实现下载并显示进度功能”有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!