diff --git a/tools/idf_tools.py b/tools/idf_tools.py index 55bc376dbd..7e59dc9737 100755 --- a/tools/idf_tools.py +++ b/tools/idf_tools.py @@ -64,11 +64,10 @@ except ImportError: pass try: - from urllib.parse import splittype from urllib.request import urlopen from urllib.error import ContentTooShortError except ImportError: - from urllib import urlopen, splittype, ContentTooShortError + from urllib import urlopen, ContentTooShortError try: from exceptions import WindowsError @@ -305,6 +304,14 @@ def unpack(filename, destination): archive_obj.extractall(destination) +def splittype(url): + match = re.match('([^/:]+):(.*)', url, re.DOTALL) + if match: + scheme, data = match.groups() + return scheme.lower(), data + return None, url + + # An alternative version of urlretrieve which takes SSL context as an argument def urlretrieve_ctx(url, filename, reporthook=None, data=None, context=None): url_type, path = splittype(url)