It's with some trepidation that I write that a new major release of xlrd is out.
The 2.x series has explicitly removed support for anything other than xls files, since xls files is the one thing left that xlrd does that no other python library I'm aware of has tackled.
I've done this for two reasons:
- pandas still has xlrd has its default engine for Excel files, but the xlsx reading in xlrd has become unreliable in Python 3.9.
- There are still xls files knocking around out there, and reading them with Python is still a thing people may need to do. I'm aware that one of the sources of these is lab equipment, and in the middle of a pandemic, I want to feel I've done what I can to help people do what they need to do.
If you have a problem opening a .xls file with xlrd 2.0.0 and above, you will need to make a pull request containing a sample file that reproduces the problem and state that you have authority and are happy for the sample file to become part of the open source and public xlrd repository.
xlsx files are made up of a zip file wrapping an xml file.
Both xml and zip have well documented security issues, which xlrd was not doing a good job of handling. In particular, it appeared that defusedxml and xlrd did not work on Python 3.9, which lead people to uninstall defusedxml as a solution, which is absolutely insane, but then so is sticking with xlrd 1.2 when you could move to openpyxl, and yet here we are:
That, and the directly-emailed-to-me spam since the 2.0 release
does not encourage me to invest time in people who want to use
excel files from Python.
You received this message because you are subscribed to the Google Groups "python-excel" group.
To unsubscribe from this group and stop receiving emails from it, send an email to python-excel...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/python-excel/fc93fb39-385c-4785-8d5b-0026b739141dn%40googlegroups.com.