Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleHub
提交
08ef63b6
P
PaddleHub
项目概览
PaddlePaddle
/
PaddleHub
1 年多 前同步成功
通知
283
Star
12117
Fork
2091
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
200
列表
看板
标记
里程碑
合并请求
4
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleHub
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
200
Issue
200
列表
看板
标记
里程碑
合并请求
4
合并请求
4
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
08ef63b6
编写于
3月 28, 2019
作者:
W
wuzewu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
limit refresh frequency
上级
377f2496
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
24 addition
and
8 deletion
+24
-8
paddle_hub/tools/downloader.py
paddle_hub/tools/downloader.py
+24
-8
未找到文件。
paddle_hub/tools/downloader.py
浏览文件 @
08ef63b6
...
...
@@ -20,15 +20,18 @@ from __future__ import print_function
import
shutil
import
os
import
sys
import
time
import
hashlib
import
requests
import
tempfile
import
tarfile
from
paddle_hub.tools
import
utils
from
paddle_hub.tools.logger
import
logger
from
paddle_hub.io.reader
import
csv_reader
__all__
=
[
'Downloader'
]
FLUSH_INTERVAL
=
0.1
def
md5file
(
fname
):
...
...
@@ -46,12 +49,17 @@ class Downloader:
save_path
,
save_name
=
None
,
retry_limit
=
3
,
print_progress
=
False
):
print_progress
=
False
,
replace
=
False
):
if
not
os
.
path
.
exists
(
save_path
):
utils
.
mkdir
(
save_path
)
save_name
=
url
.
split
(
'/'
)[
-
1
]
if
save_name
is
None
else
save_name
file_name
=
os
.
path
.
join
(
save_path
,
save_name
)
retry_times
=
0
if
replace
and
os
.
path
.
exists
(
file_name
):
os
.
remove
(
file_name
)
while
not
(
os
.
path
.
exists
(
file_name
)):
if
os
.
path
.
exists
(
file_name
):
logger
.
info
(
"file md5"
,
md5file
(
file_name
))
...
...
@@ -72,17 +80,23 @@ class Downloader:
with
open
(
file_name
,
'wb'
)
as
f
:
dl
=
0
total_length
=
int
(
total_length
)
starttime
=
time
.
time
()
for
data
in
r
.
iter_content
(
chunk_size
=
4096
):
dl
+=
len
(
data
)
f
.
write
(
data
)
if
print_progress
:
done
=
int
(
50
*
dl
/
total_length
)
sys
.
stdout
.
write
(
"
\r
%s : [%-50s]%.2f%%"
%
(
save_name
,
'='
*
done
,
float
(
dl
/
total_length
*
100
)))
sys
.
stdout
.
flush
()
if
time
.
time
()
-
starttime
>=
FLUSH_INTERVAL
:
sys
.
stdout
.
write
(
"
\r
%s : [%-50s]%.2f%%"
%
(
save_name
,
'='
*
done
,
float
(
dl
/
total_length
*
100
)))
starttime
=
time
.
time
()
sys
.
stdout
.
flush
()
if
print_progress
:
sys
.
stdout
.
write
(
"
\n
"
)
sys
.
stdout
.
write
(
"
\r
%s : [%-50s]%.2f%%
\n
"
%
(
save_name
,
'='
*
done
,
float
(
dl
/
total_length
*
100
)))
sys
.
stdout
.
flush
()
tips
=
"file %s download completed!"
%
(
file_name
)
...
...
@@ -107,13 +121,15 @@ class Downloader:
save_name
=
None
,
retry_limit
=
3
,
delete_file
=
True
,
print_progress
=
False
):
print_progress
=
False
,
replace
=
False
):
result
,
tips_1
,
file
=
self
.
download_file
(
url
=
url
,
save_path
=
save_path
,
save_name
=
save_name
,
retry_limit
=
retry_limit
,
print_progress
=
print_progress
)
print_progress
=
print_progress
,
replace
=
replace
)
if
not
result
:
return
result
,
tips_1
,
file
result
,
tips_2
,
file
=
self
.
uncompress
(
file
,
delete_file
=
delete_file
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录