File "", line 1, in
runfile('F:/-/-/-/cleaner_games_appstore_babil.py', wdir='F:/-/-/-')
File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 827, in runfile
execfile(filename, namespace)
File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 110, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)
File "F:/-/-/-/cleaner_games_appstore_babil.py", line 112, in
append_df_to_excel("stillfront.xlsx", dff, sheet_name='Apple_Babil', startrow=None, truncate_sheet=False, engine='openpyxl', header = False)
File "F:/-/-/-/cleaner_games_appstore_babil.py", line 84, in append_df_to_excel
writer.book = load_workbook(filename)
File "C:\ProgramData\Anaconda3\lib\site-packages\openpyxl\reader\excel.py", line 311, in load_workbook
data_only, keep_links)
File "C:\ProgramData\Anaconda3\lib\site-packages\openpyxl\reader\excel.py", line 126, in __init__
self.archive = _validate_archive(fn)
File "C:\ProgramData\Anaconda3\lib\site-packages\openpyxl\reader\excel.py", line 98, in _validate_archive
archive = ZipFile(filename, 'r')
File "C:\ProgramData\Anaconda3\lib\zipfile.py", line 1222, in __init__
self._RealGetContents()
File "C:\ProgramData\Anaconda3\lib\zipfile.py", line 1289, in _RealGetContents
raise BadZipFile("File is not a zip file")
BadZipFile: File is not a zip file
Чтобы уточнить, я не использую zip-файлы. Я нашел код здесь, StackOverflow, и там не было упоминаний о том, что код не работает или происходит ошибка.
Сценарий должен записать мой DataFrame панд в Лист Excel.
Вот часть кода, которая создает ошибку:
def append_df_to_excel(filename, df, sheet_name='Apple_Babil', startrow=None,
truncate_sheet=False,
**to_excel_kwargs):
# ignore [engine] parameter if it was passed
if 'engine' in to_excel_kwargs:
to_excel_kwargs.pop('engine')
writer = pd.ExcelWriter(filename, engine='openpyxl')
try:
# try to open an existing workbook
writer.book = load_workbook(filename)
# get the last row in the existing Excel sheet
# if it was not specified explicitly
if startrow is None and sheet_name in writer.book.sheetnames:
startrow = writer.book[sheet_name].max_row
# truncate sheet
if truncate_sheet and sheet_name in writer.book.sheetnames:
# index of [sheet_name] sheet
idx = writer.book.sheetnames.index(sheet_name)
# remove [sheet_name]
writer.book.remove(writer.book.worksheets[idx])
# create an empty sheet [sheet_name] using old index
writer.book.create_sheet(sheet_name, idx)
# copy existing sheets
writer.sheets = {ws.title:ws for ws in writer.book.worksheets}
except FileNotFoundError:
# file does not exist yet, we will create it
pass
if startrow is None:
startrow = 0
# write out the new sheet
df.to_excel(writer, sheet_name, startrow=startrow, **to_excel_kwargs)
# save the workbook
writer.save()
append_df_to_excel("stillfront.xlsx", dff, sheet_name='Apple_Babil', startrow=None, truncate_sheet=False, engine='openpyxl', header = False)
Код не редактировался или что-то в этом роде, просто начал не работать.
Одну минуту мой скрипт работает несколько дней подряд, а в следующую минуту я получаю эту ошибку.
[code] File "", line 1, in runfile('F:/-/-/-/cleaner_games_appstore_babil.py', wdir='F:/-/-/-')
File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 827, in runfile execfile(filename, namespace)
File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 110, in execfile exec(compile(f.read(), filename, 'exec'), namespace)
File "F:/-/-/-/cleaner_games_appstore_babil.py", line 112, in append_df_to_excel("stillfront.xlsx", dff, sheet_name='Apple_Babil', startrow=None, truncate_sheet=False, engine='openpyxl', header = False)
File "F:/-/-/-/cleaner_games_appstore_babil.py", line 84, in append_df_to_excel writer.book = load_workbook(filename)
File "C:\ProgramData\Anaconda3\lib\site-packages\openpyxl\reader\excel.py", line 311, in load_workbook data_only, keep_links)
File "C:\ProgramData\Anaconda3\lib\site-packages\openpyxl\reader\excel.py", line 126, in __init__ self.archive = _validate_archive(fn)
File "C:\ProgramData\Anaconda3\lib\site-packages\openpyxl\reader\excel.py", line 98, in _validate_archive archive = ZipFile(filename, 'r')
File "C:\ProgramData\Anaconda3\lib\zipfile.py", line 1222, in __init__ self._RealGetContents()
File "C:\ProgramData\Anaconda3\lib\zipfile.py", line 1289, in _RealGetContents raise BadZipFile("File is not a zip file")
BadZipFile: File is not a zip file [/code]
Чтобы уточнить, я не использую zip-файлы. Я нашел код здесь, StackOverflow, и там не было упоминаний о том, что код не работает или происходит ошибка.
Сценарий должен записать мой DataFrame панд в Лист Excel. Вот часть кода, которая создает ошибку:
# try to open an existing workbook writer.book = load_workbook(filename) # get the last row in the existing Excel sheet # if it was not specified explicitly if startrow is None and sheet_name in writer.book.sheetnames: startrow = writer.book[sheet_name].max_row
# truncate sheet if truncate_sheet and sheet_name in writer.book.sheetnames: # index of [sheet_name] sheet idx = writer.book.sheetnames.index(sheet_name) # remove [sheet_name] writer.book.remove(writer.book.worksheets[idx]) # create an empty sheet [sheet_name] using old index writer.book.create_sheet(sheet_name, idx) # copy existing sheets writer.sheets = {ws.title:ws for ws in writer.book.worksheets}
except FileNotFoundError: # file does not exist yet, we will create it pass
if startrow is None: startrow = 0 # write out the new sheet df.to_excel(writer, sheet_name, startrow=startrow, **to_excel_kwargs) # save the workbook writer.save()
Обнаружена ошибка «BadZipFile: файл не является zip-файлом» при загрузке книги Excel с помощью функции openpyxl load_workbook. Как устранить эту ошибку?
workbook = r'C:\Desktop\Test.xlsx'
worksheet = 'Data'
Я пытаюсь прочитать файлы .xlsx из папок в определенном каталоге и записать/экспортировать их в 4 новых файла .xlsx, которые каждый новый .xlsx будут содержать каталог данных в год.
Скрипт работает хорошо, когда я попробовал это несколько месяцев...
Я пытаюсь прочитать файлы .xlsx из папок в определенном каталоге и записать /экспортировать их в 4 новых файла .xlsx, которые каждый новый .xlsx будет содержать каталог данных в год.
Сценарий работает хорошо, когда я попробовал несколько месяцев...
Я пытаюсь прочитать файл Excel от SharePoint To Python, и мое первое сообщение об ошибке было то, что я должен определить двигатель вручную, поэтому я определил engine = 'openpyxl', и теперь появляется следующее сообщение об ошибке: файл не был zip...