发布时间:2019-09-23 17:09:11编辑:auto阅读(1726)
一个在没有wget工具情况下,写的下载工具,仅供参考!
#!/usr/bin/env python
#wget program
import sys,urllib,httplib,urlparse
def reporthook(*progress_bar_info):
show_progress_bar_inf=progress_bar_info
block_numbers=show_progress_bar_inf[0]
block_size=show_progress_bar_inf[1]
file_total_size=show_progress_bar_inf[2]
temp_file_total_size=block_numbers*block_size
if temp_file_total_size>file_total_size:
print "Download Successful!"
else:
print str(float(temp_file_total_size)/file_total_size*100)[0:5]+"%"
def check_file_exists(url):
host,path=urlparse.urlsplit(url)[1:3]
if ':' in host:
host,port=host.split(':',1)
try:
port=int(port)
except ValueError:
print 'invalid port number %r' %(port,)
sys.exit(1)
else:
port=80
connection=httplib.HTTPConnection(host,port)
connection.request("HEAD",path)
resp=connection.getresponse()
return resp.status
if __name__=='__main__':
for url in sys.argv[1:]:
status=check_file_exists(url)
i=url.rfind('/')
file=url[i+1:]
if status==404:
print file,"not exist!"
sys.exit(1)
print url,"->",file
urllib.urlretrieve(url,file,reporthook)
如果想了解更多,请关注我们的公众号
公众号ID:opdevos
扫码关注
上一篇: Python基础:Python类(真累~
下一篇: 学习笔记-小甲鱼Python3学习第二十
47989
46595
37538
34902
29464
26119
25074
20095
19723
18195
5912°
6565°
6068°
6072°
7189°
6017°
6096°
6576°
6537°
7925°