i would expect exceptions like this to be caught by a method called `load_data`, possibly raising its own exception

as a "user" of that function, exceptions from `requests` or `IOError`s are implementation detail