diff --git a/pandas/io/json/_json.py b/pandas/io/json/_json.py index 6ce288890b6c7..e71e695e5a5a5 100644 --- a/pandas/io/json/_json.py +++ b/pandas/io/json/_json.py @@ -1,4 +1,5 @@ from collections import OrderedDict +from errno import ENOENT from io import StringIO from itertools import islice import os @@ -708,6 +709,14 @@ def _get_data_from_filepath(self, filepath_or_buffer): ) self.should_close = True self.open_stream = data + else: + raise FileNotFoundError( + ENOENT, + "File {filepath_or_buffer} does not exist".format( + filepath_or_buffer=filepath_or_buffer + ), + filepath_or_buffer, + ) return data diff --git a/pandas/tests/io/test_common.py b/pandas/tests/io/test_common.py index 655fd9d01c1c0..1938f5f994db5 100644 --- a/pandas/tests/io/test_common.py +++ b/pandas/tests/io/test_common.py @@ -141,7 +141,7 @@ def test_iterator(self): (pd.read_hdf, "tables", FileNotFoundError, "h5"), (pd.read_stata, "os", FileNotFoundError, "dta"), (pd.read_sas, "os", FileNotFoundError, "sas7bdat"), - (pd.read_json, "os", ValueError, "json"), + (pd.read_json, "os", FileNotFoundError, "json"), (pd.read_msgpack, "os", FileNotFoundError, "mp"), (pd.read_pickle, "os", FileNotFoundError, "pickle"), ], @@ -176,7 +176,7 @@ def test_read_non_existant(self, reader, module, error_class, fn_ext): (pd.read_hdf, "tables", FileNotFoundError, "h5"), (pd.read_stata, "os", FileNotFoundError, "dta"), (pd.read_sas, "os", FileNotFoundError, "sas7bdat"), - (pd.read_json, "os", ValueError, "json"), + (pd.read_json, "os", FileNotFoundError, "json"), (pd.read_msgpack, "os", FileNotFoundError, "mp"), (pd.read_pickle, "os", FileNotFoundError, "pickle"), ],