diff options
| author | Ryan Castner <castner.rr@gmail.com> | 2017-09-01 13:21:21 -0400 |
|---|---|---|
| committer | Ryan Castner <castner.rr@gmail.com> | 2017-09-01 13:21:21 -0400 |
| commit | 7f1db4023f2310529822d721379b1019aaf320fc (patch) | |
| tree | 8ef8c1eb9dc785b2f648b458c705433059d78f4f /tablib | |
| parent | b09fface1be24bd4025b705f7f8495efb398991d (diff) | |
| download | tablib-7f1db4023f2310529822d721379b1019aaf320fc.tar.gz | |
Raise NotImplementedError if pandas is not installed
Diffstat (limited to 'tablib')
| -rw-r--r-- | tablib/formats/_df.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/tablib/formats/_df.py b/tablib/formats/_df.py index 5996ce9..44b967f 100644 --- a/tablib/formats/_df.py +++ b/tablib/formats/_df.py @@ -10,7 +10,10 @@ if sys.version_info[0] > 2: else: from cStringIO import StringIO as BytesIO -from pandas import DataFrame +try: + from pandas import DataFrame +except ImportError: + DataFrame = None import tablib @@ -21,6 +24,8 @@ extensions = ('df', ) def detect(stream): """Returns True if given stream is a DataFrame.""" + if DataFrame is None: + return False try: DataFrame(stream) return True @@ -30,6 +35,10 @@ def detect(stream): def export_set(dset, index=None): """Returns DataFrame representation of DataBook.""" + if DataFrame is None: + raise NotImplementedError( + 'DataFrame Format requires `pandas` to be installed.' + ' Try `pip install tablib[pandas]`.') dataframe = DataFrame(dset.dict, columns=dset.headers) return dataframe |
