summaryrefslogtreecommitdiff
path: root/numpy/lib/_datasource.py
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/lib/_datasource.py')
-rw-r--r--numpy/lib/_datasource.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/numpy/lib/_datasource.py b/numpy/lib/_datasource.py
index 06aae85d8..3fe1df615 100644
--- a/numpy/lib/_datasource.py
+++ b/numpy/lib/_datasource.py
@@ -34,17 +34,24 @@ Example:
__docformat__ = "restructuredtext en"
-import bz2
-import gzip
import os
import tempfile
from shutil import rmtree
from urllib2 import urlopen, URLError
from urlparse import urlparse
-
# TODO: .zip support, .tar support?
-_file_openers = {".gz":gzip.open, ".bz2":bz2.BZ2File, None:file}
+_file_openers = {None: open}
+try:
+ import bz2
+ _file_openers[".bz2"] = bz2.BZ2File
+except ImportError:
+ pass
+try:
+ import gzip
+ _file_openers[".gz"] = gzip.open
+except ImportError:
+ pass
def open(path, mode='r', destpath=os.curdir):