Is it necessary/appropriate to check the supported format of the source files using the file extension?
This breaks the pattern of using urllib to load files from network sources, which saves to a tmp file (with no file extension) and passes the path on for loading:
filepath, headers = urllib.request.urlretrieve('http://example.com/file.xlsx') load_workbook(filepath)
It also deviates from the behaviour of xlrd, and other file loading functions in pandas, petl, etc.
Would like to propose removing the check, or using something other than the file extension (perhaps the file contents) to check for format support.