[PYTHON] Que faire lorsque xlrd.biffh.XLRDError: format non pris en charge ou fichier corrompu: enregistrement BOF attendu;

--Environnement --Windows10 Pro version 1909 - Python 3.8.5 - Pandas 1.0.5

Événement: je me suis mis en colère lorsque j'ai essayé de lire un fichier Excel avec Pandas

J'étais en colère quand j'ai créé un code pour lire un fichier Excel avec Python, en faire un fichier exe avec PyInstaller, changer le répertoire et l'exécuter à l'invite de commande.

> my-code.exe
Le processus de vérification a commencé. Ne fermez pas l'écran.
Traceback (most recent call last):
  File "my-code.py", line 256, in <module>
  File "my-code.py", line 218, in check_files
  File "pandas\io\excel\_base.py", line 304, in read_excel
  File "pandas\io\excel\_base.py", line 824, in __init__
  File "pandas\io\excel\_xlrd.py", line 21, in __init__
  File "pandas\io\excel\_base.py", line 353, in __init__
  File "pandas\io\excel\_xlrd.py", line 36, in load_workbook
  File "xlrd\__init__.py", line 148, in open_workbook
  File "xlrd\book.py", line 92, in open_workbook_xls
  File "xlrd\book.py", line 1278, in getbof
  File "xlrd\book.py", line 1272, in bof_error
xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b'\t\x92\x86\x88\xe4 \x90^'
[12704] Failed to execute script my-code

my-code.py


import pandas as pd

def check_files():
    #Lire le fichier Excel
    book = pd.read_excel(excel_file, sheet_name=None, header=None)

Cause: il y a un fichier d'ordures

Il y avait un fichier qui commençait par ~ $ qui a été créé lorsque j'ai ouvert le fichier Excel ... Parfois, il reste même après la fermeture du fichier Excel ... Je ne pouvais pas le voir dans l'Explorateur, mais je pouvais le voir avec la commande dir ...

> dir data\
# ...réduction...
2020/10/07  10:30               165 ~$Excel à traiter.xlsm

Action: supprimez le fichier de déchets

#Supprimer le fichier de déchets
> cd data\
> del "~$Excel à traiter.xlsm"

#Cela fonctionnait quand il n'y avait pas de déchets
> cd ../
> my-code.exe
Le processus de vérification a commencé. Ne fermez pas l'écran.
Le traitement de l'outil est terminé.

Recommended Posts

Que faire lorsque xlrd.biffh.XLRDError: format non pris en charge ou fichier corrompu: enregistrement BOF attendu;
Que faire lorsque [Errno 2] Aucun fichier ou répertoire de ce type n'apparaît en Python
Que faire lorsque gdal_merge génère un fichier énorme
Que faire lorsque vous déclenchez ValueError, "type de hachage non pris en charge"
Que faire lorsque la police PyCharm est étrange ou déformée
Que faire quand Ubuntu plante
Que faire quand une PermissionError dans tempfile.mkstemp se produit
Que faire si ENOENT: aucun fichier ou répertoire de ce type n'apparaît pendant l'installation de npm
[Go 1.13] Que faire lorsque la disposition de répertoire inattendue: apparaît
[openpyxl] Que faire lorsque IllegalCharacterError apparaît dans pandas.DataFrame.to_excel
curl: (60) Que faire lorsque le certificat de l'émetteur n'est pas valide.
Que faire lorsque "impossible d'importer le nom xxx" [Python]
Comment convertir des fichiers Json au format CSV ou au format EXCEL
[AWS] Que faire lorsque vous souhaitez piper avec Lambda
Procédures à suivre lorsque le japonais n'est pas affiché dans matplotlib
Que faire lorsqu'une erreur de suppression se produit lors de la mise à jour de conda
Que faire lorsque des séries booléennes non alignables sont fournies comme indexeur
TypeError: type (s) d'opérande non pris en charge pour-: Que faire quand'datetime.time'et'atetime.time '
Que faire lorsqu'une erreur se produit avec import _ssl
Que faire si l'installation du package échoue lors du déploiement sur heroku
Que faire lorsque "SSL: CERTIFICATE_VERIFY_FAILED _ssl.c: 1056" apparaît en Python
OSError: [Errno 40] Que faire lorsque Message trop long apparaît
Que faire lorsque "En-tête HTTP_HOST non valide" apparaît dans Django
ImportError: Pas de module Que faire quand on vous dit
[Débutant] Que faire lorsque "[Errno 2] Le fichier b'test.csv 'n'existe pas: b'test.csv" s'affiche lors de la lecture du csv des pandas