41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|  | #!/usr/bin/env python | ||
|  | 
 | ||
|  | import sys, os | ||
|  | 
 | ||
|  | try: | ||
|  |     import urllib.request as compat_urllib_request | ||
|  | except ImportError: # Python 2 | ||
|  |     import urllib2 as compat_urllib_request | ||
|  | 
 | ||
|  | sys.stderr.write(u'Hi! We changed distribution method and now youtube-dl needs to update itself one more time.\n') | ||
|  | sys.stderr.write(u'This will only happen once. Simply press enter to go on. Sorry for the trouble!\n') | ||
|  | sys.stderr.write(u'The new location of the binaries is https://github.com/rg3/youtube-dl/downloads, not the git repository.\n\n') | ||
|  | 
 | ||
|  | try: | ||
|  | 	raw_input() | ||
|  | except NameError: # Python 3 | ||
|  | 	input() | ||
|  | 
 | ||
|  | filename = sys.argv[0] | ||
|  | 
 | ||
|  | API_URL = "https://api.github.com/repos/rg3/youtube-dl/downloads" | ||
|  | BIN_URL = "https://github.com/downloads/rg3/youtube-dl/youtube-dl" | ||
|  | 
 | ||
|  | if not os.access(filename, os.W_OK): | ||
|  |     sys.exit('ERROR: no write permissions on %s' % filename) | ||
|  | 
 | ||
|  | try: | ||
|  |     urlh = compat_urllib_request.urlopen(BIN_URL) | ||
|  |     newcontent = urlh.read() | ||
|  |     urlh.close() | ||
|  | except (IOError, OSError) as err: | ||
|  |     sys.exit('ERROR: unable to download latest version') | ||
|  | 
 | ||
|  | try: | ||
|  |     with open(filename, 'wb') as outf: | ||
|  |         outf.write(newcontent) | ||
|  | except (IOError, OSError) as err: | ||
|  |     sys.exit('ERROR: unable to overwrite current version') | ||
|  | 
 | ||
|  | sys.stderr.write(u'Done! Now you can run youtube-dl.\n') |