对python中的six.moves模块的下载函数urlretrieve详解


Posted in Python onDecember 19, 2018

实验环境:windows 7,anaconda 3(python 3.5),tensorflow(gpu/cpu)

函数介绍:所用函数为six.moves下的urllib中的函数,调用如下urllib.request.urlretrieve(url,[filepath,[recall_func,[data]]])。简单介绍一下,url是必填的指的是下载地址,filepath指的是保存的本地地址,recall_func指的是回调函数,下载过程中会调用可以用来显示下载进度。

实验代码:以下载cifar10的dataset和抓取斗鱼首页为例

下载cifar10的dataset,并解压

from six.moves import urllib
import os
import sys
import tensorflow as tf
import tarfile
FLAGS = tf.app.flags.FLAGS#提取系统参数作用的变量
tf.app.flags.DEFINE_string('dir','D:/download_html','directory of html')#将下载目录保存到变量dir中,通过FLAGS.dir提取
directory = FLAGS.dir#从FLAGS中提取dir变量
url = 'http://www.cs.toronto.edu/~kriz/cifar-10-binary.tar.gz'
filename = url.split('/')[-1]#-1表示分割后的最后一个元素
filepath = os.path.join(directory,filename)
if not os.path.exists(directory):
 os.makedirs(directory)
if not os.path.exists(filepath):
 def _recall_func(num,block_size,total_size):
 sys.stdout.write('\r>> downloading %s %.1f%%' % (filename,float(num*block_size)/float(total_size)*100.0))
 sys.stdout.flush()
 urllib.request.urlretrieve(url,filepath,_recall_func)
 print()
 file_info = os.stat(filepath)
 print('Successfully download',filename,file_info.st_size,'bytes')
tar = tarfile.open(filepath,'r:gz')#指定解压路径和解压方式为解压gzip
tar.extractall(directory)#全部解压

对python中的six.moves模块的下载函数urlretrieve详解

抓取斗鱼首页

from six.moves import urllib
import os
import sys
import tensorflow as tf
FLAGS = tf.app.flags.FLAGS#提取系统参数作用的变量
tf.app.flags.DEFINE_string('dir','D:/download_html','directory of html')#将下载目录保存到变量dir中,通过FLAGS.dir提取
directory = FLAGS.dir#从FLAGS中提取dir变量
url = 'http://www.douyu.com/'
filename = 'douyu.html'#保存成你想要的名字,这里保存成douyu.html
filepath = os.path.join(directory,filename)
if not os.path.exists(directory):
 os.makedirs(directory)
if not os.path.exists(filepath):
 def _recall_func(num,block_size,total_size):
 sys.stdout.write('\r>> downloading %s %.1f%%' % (filename,float(num*block_size)/float(total_size)*100.0))
 sys.stdout.flush()
 urllib.request.urlretrieve(url,filepath,_recall_func)
 print()
 file_info = os.stat(filepath)#获取文件信息
 print('Successfully download',filename,file_info.st_size,'bytes')#.st_size文件的大小,以字节为单位

对python中的six.moves模块的下载函数urlretrieve详解

对python中的six.moves模块的下载函数urlretrieve详解

以上这篇对python中的six.moves模块的下载函数urlretrieve详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
实例解析Python中的__new__特殊方法
Jun 02 Python
python3.5实现socket通讯示例(TCP)
Feb 07 Python
python基础教程项目五之虚拟茶话会
Apr 02 Python
学习python可以干什么
Feb 26 Python
在Python中os.fork()产生子进程的例子
Aug 08 Python
python+selenium 点击单选框-radio的实现方法
Sep 03 Python
flask 实现token机制的示例代码
Nov 07 Python
Django继承自带user表并重写的例子
Nov 18 Python
django处理select下拉表单实例(从model到前端到post到form)
Mar 13 Python
python 三种方法实现对Excel表格的读写
Nov 19 Python
Python机器学习应用之工业蒸汽数据分析篇详解
Jan 18 Python
Python识别花卉种类鉴定网络热门植物并自动整理分类
Apr 08 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
Dec 18 #Python
对python3标准库httpclient的使用详解
Dec 18 #Python
python 3.3 下载固定链接文件并保存的方法
Dec 18 #Python
python根据url地址下载小文件的实例
Dec 18 #Python
如何用python写一个简单的词法分析器
Dec 18 #Python
详解Python requests 超时和重试的方法
Dec 18 #Python
解决新django中的path不能使用正则表达式的问题
Dec 18 #Python
You might like
php对包含html标签的字符串进行截取的函数分享
2014/06/19 PHP
thinkphp中空模板与空模块的用法实例
2014/11/26 PHP
php框架CodeIgniter使用redis的方法分析
2018/04/13 PHP
Alliance vs AM BO3 第二场2.13
2021/03/10 DOTA
利用js的Node遍历找到repeater的一个字段实例介绍
2013/04/25 Javascript
jQuery阻止事件冒泡具体实现
2013/10/11 Javascript
innerHTML,outerHTML,innerText,outerText的用法及区别解析
2013/12/16 Javascript
老生常谈JavaScript数组的用法
2016/06/10 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
2016/06/14 Javascript
BootStrap selectpicker
2016/06/20 Javascript
使用 Node.js 对文本内容分词和关键词抽取
2017/05/27 Javascript
laydate时间日历插件使用方法详解
2018/11/14 Javascript
vue实现节点增删改功能
2019/09/26 Javascript
基于Vue el-autocomplete 实现类似百度搜索框功能
2019/10/25 Javascript
vue实现匀速轮播效果
2020/06/29 Javascript
JSON stringify方法原理及实例解析
2020/10/23 Javascript
[40:19]2018完美盛典CS.GO表演赛
2018/12/17 DOTA
python多重继承新算法C3介绍
2014/09/28 Python
用python实现k近邻算法的示例代码
2018/09/06 Python
解决Shell执行python文件,传参空格引起的问题
2018/10/30 Python
在Mac下使用python实现简单的目录树展示方法
2018/11/01 Python
在python下读取并展示raw格式的图片实例
2019/01/24 Python
Python Numpy 实现交换两行和两列的方法
2019/06/26 Python
Python帮你微信头像任意添加装饰别再@微信官方了
2019/09/25 Python
python 使用elasticsearch 实现翻页的三种方式
2020/07/31 Python
全球速卖通西班牙站:AliExpress西班牙
2017/10/30 全球购物
Java的基础面试题附答案
2016/01/10 面试题
下面代码从性能上考虑,有什么问题
2015/04/03 面试题
技术合作协议书范本
2014/04/18 职场文书
小学生爱国演讲稿
2014/04/25 职场文书
民事诉讼授权委托书范文
2014/08/02 职场文书
小学教师师德师风承诺书
2015/04/28 职场文书
单位病假条范文
2015/08/17 职场文书
js之ajax文件上传
2021/05/13 Javascript
Python办公自动化之教你用Python批量识别发票并录入到Excel表格中
2021/06/26 Python
js 数组 fill() 填充方法
2021/11/02 Javascript