Pythonのxlrd
ライブラリを使用してExcelの.xlsx
ファイルを読み込もうとすると、xlrd.biffh.XLRDError: Excel xlsx file; not supported
というエラーが発生することがあります。これは、xlrd
がバージョン2.0.0から.xlsx
ファイルをサポートしなくなったためです。
解決策
この問題を解決するための主な方法は次のとおりです:
- xlrdのバージョンを下げる:
xlrd
のバージョンを1.2.0に戻すことで、一時的にこの問題を解決することができます。以下のコマンドを使用してxlrd
のバージョンを1.2.0に戻すことができます:
pip install xlrd==1.2.0
- 読み込むライブラリを
openpyxl
に変更する:openpyxl
ライブラリは.xls
と.xlsx
の両方のファイル形式をサポートしています。openpyxl
をインストールし、pandas.read_excel
メソッドのengine
引数をopenpyxl
に設定することで、xlrd
の代わりにopenpyxl
ライブラリを使用するように指定できます。以下のコマンドを使用してopenpyxl
をインストールし、engine
引数を設定することができます:
pip install openpyxl
df = pd.read_excel('sample.xlsx', engine='openpyxl')
これらの解決策を試すことで、xlrd.biffh.XLRDError: Excel xlsx file; not supported
エラーを解決することができます。それぞれの状況に応じて最適な解決策を選択してください。