对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模块之StringIO使用示例
Apr 08 Python
在Python中操作字典之update()方法的使用
May 22 Python
Python中Class类用法实例分析
Nov 12 Python
举例讲解如何在Python编程中进行迭代和遍历
Jan 19 Python
Python元组及文件核心对象类型详解
Feb 11 Python
Python元组拆包和具名元组解析实例详解
Mar 26 Python
Python子类继承父类构造函数详解
Feb 19 Python
Python 使用folium绘制leaflet地图的实现方法
Jul 05 Python
python爬虫 线程池创建并获取文件代码实例
Sep 28 Python
PHP基于phpqrcode类库生成二维码过程解析
May 28 Python
python 利用jieba.analyse进行 关键词提取
Dec 17 Python
python接口测试返回数据为字典取值方式
Feb 12 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
用来解析.htgroup文件的PHP类
2012/09/05 PHP
ASP和PHP实现生成网站快捷方式并下载到桌面的方法
2014/05/08 PHP
PHP使用JpGraph绘制折线图操作示例【附源码下载】
2019/10/18 PHP
用javascript实现的支持lrc歌词的播放器
2007/05/17 Javascript
JavaScript中的property和attribute介绍
2011/12/26 Javascript
JavaScript获取和设置CheckBox状态的简单方法
2013/07/05 Javascript
js如何判断不同系统的浏览器类型
2013/10/28 Javascript
javascript验证上传文件的类型限制必须为某些格式
2013/11/14 Javascript
jQuery ajax调用WCF服务实例
2014/07/16 Javascript
MVC Ajax Helper或Jquery异步加载部分视图
2015/11/29 Javascript
jquery跟随屏幕滚动效果的实现代码
2016/04/13 Javascript
Jq通过td获取同行其它列td的方法
2016/10/05 Javascript
javascript 中的try catch应用总结
2017/04/01 Javascript
Javascript操作dom对象之select全面解析
2017/04/24 Javascript
深入理解Angularjs中$http.post与$.post
2017/05/19 Javascript
微信小程序中setInterval的使用方法
2017/09/29 Javascript
微信小程序js文件改变参数并在视图上及时更新【推荐】
2018/06/11 Javascript
js+html5 canvas实现ps钢笔抠图
2019/04/28 Javascript
微信小程序3D轮播实现代码
2019/09/19 Javascript
JavaScript的console命令使用实例
2019/12/03 Javascript
Vue 封装防刷新考试倒计时组件的实现
2020/06/05 Javascript
[02:51]DOTA2英雄基础教程 艾欧
2014/01/13 DOTA
[59:48]LGD vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
深入理解Python中装饰器的用法
2016/06/28 Python
python实现自动发送邮件
2018/06/20 Python
Python多线程原理与用法详解
2018/08/20 Python
Python设计模式之命令模式原理与用法实例分析
2019/01/11 Python
Python打包工具PyInstaller的安装与pycharm配置支持PyInstaller详细方法
2020/02/27 Python
在Django中预防CSRF攻击的操作
2020/03/13 Python
基于python 凸包问题的解决
2020/04/16 Python
校庆活动方案
2014/03/31 职场文书
司法工作人员群众路线对照检查材料思想汇报
2014/09/30 职场文书
2015年科协工作总结
2015/05/19 职场文书
2015秋季开学典礼新闻稿
2015/07/17 职场文书
市场营销计划书
2019/04/24 职场文书
PyTorch 如何设置随机数种子使结果可复现
2021/05/12 Python