def getRemoteFileSize(url, proxy=None):
""" get remote file size via content-length header
url - target file URL
proxy - proxy """
opener = urllib2.build_opener()
if proxy:
if ().startswith('https://'):
opener.add_handler(({'https' : proxy}))
else:
opener.add_handler(({'http' : proxy}))
try:
request = (url)
request.get_method = lambda: 'HEAD'
response = (request)
()
except Exception, e: # The remote file does not exist.
return 0
else:
fileSize = dict().get('content-length', 0)
return int(fileSize)