Files
python-appimage/python_appimage/utils/url.py
2020-04-03 01:17:34 +02:00

41 lines
988 B
Python

import os
try:
from urllib.request import urlopen as _urlopen
except ImportError:
from urllib2 import urlopen as _urlopen
try:
from urllib.request import urlretrieve as _urlretrieve
except ImportError:
import urllib2
_urlretrieve = None
from .log import debug
__all__ = ['urlopen', 'urlretrieve']
def urlopen(url, *args, **kwargs):
'''Open a remote file
'''
baseurl, urlname = os.path.split(url)
debug('DOWNLOAD', '%s from %s', baseurl, urlname)
return _urlopen(url, *args, **kwargs)
def urlretrieve(url, filename=None):
'''Download a file to disk
'''
if filename is None:
filename = os.path.basename(url)
debug('DOWNLOAD', '%s from %s', name, os.path.dirname(url))
else:
debug('DOWNLOAD', '%s as %s', url, filename)
if _urlretrieve is None:
data = urllib2.urlopen(url).read()
with open(filename, 'w') as f:
f.write(data)
else:
_urlretrieve(url, filename)