健身数年,肚子依然肥

离线下载vs code 插件 python源码

 1 import argparse
 2 import os
 3 import requests
 4 
 5 
 6 HEADERS = {
 7     'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 '
 8                   '(KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36'
 9 }
10 
11 ext_url="https://{0}.gallery.vsassets.io/_apis/public/gallery/publisher/{1}/extension/{2}/{3}/assetbyname/Microsoft.VisualStudio.Services.VSIXPackage"
12 
13 def download_ext(publisher,name,ver):
14     url=ext_url.format(publisher,publisher,name,ver)
15     print(url)
16     res=requests.get(url,headers=HEADERS)
17     res.raise_for_status()  
18     playFile = open(publisher+'.'+name+'.vsix', 'wb')  
19     for chunk in res.iter_content(1024):  
20         playFile.write(chunk)  
21     playFile.close()
22 
23 
24 def arg_parse():
25     parse=argparse.ArgumentParser(description='VSCode Extension Download  CLI Tools')
26     parse.add_argument("-i",'--identifier',type=str,help='extension unique identifier')
27     parse.add_argument('-v','--version',type=str,help='extension version')
28     return parse
29 
30 def command_parse():
31     parse=arg_parse()
32     args=vars(parse.parse_args())
33     print(args)
34 
35     key=args["identifier"]
36 
37     index=key.find('.')
38     publisher=key[:index]
39     name=key[index+1:]
40     download_ext(publisher,name,args['version'])
41    
42 
43 if __name__ == "__main__":
44     command_parse()
45            

 

posted @ 2018-03-19 22:37  guyuntech  阅读(1490)  评论(0编辑  收藏  举报