发布时间:2019-09-23 17:09:11编辑:auto阅读(2911)
一个在没有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学习第二十
54410
41167
35690
31261
26165
25880
24366
19914
15955
15400
2260°
2074°
2167°
2280°
2250°
2458°
2399°
2210°
2289°
2265°