KeyError: "There is no item named '[Content_Types].xml' in the archive" problem!

0

w tym kodzie mam taki błąd: (co mam zrobić)
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\Robert\Documents\Vsiate\lib\tkinter_init_.py", line 1921, in call
return self.func(*args)
File "c:\users\robert\desktop\visiate\visiateai.py", line 160, in save_text
workbook = openpyxl.load_workbook('przyklad.xlsx') # Zastąp 'przyklad.xlsx' nazwą swojego pliku
File "C:\Users\Robert\Documents\Vsiate\lib\site-packages\openpyxl\reader\excel.py", line 317, in load_workbook
reader.read()
File "C:\Users\Robert\Documents\Vsiate\lib\site-packages\openpyxl\reader\excel.py", line 276, in read
self.read_manifest()
File "C:\Users\Robert\Documents\Vsiate\lib\site-packages\openpyxl\reader\excel.py", line 134, in read_manifest
src = self.archive.read(ARC_CONTENT_TYPES)
File "C:\Users\Robert\Documents\Vsiate\lib\zipfile.py", line 1475, in read
with self.open(name, "r", pwd) as fp:
File "C:\Users\Robert\Documents\Vsiate\lib\zipfile.py", line 1514, in open
zinfo = self.getinfo(name)
File "C:\Users\Robert\Documents\Vsiate\lib\zipfile.py", line 1441, in getinfo
raise KeyError(
KeyError: "There is no item named '[Content_Types].xml' in the archive"
kod:

                workbook = openpyxl.load_workbook('przyklad.xlsx')

                sheet1 = workbook['Sheet']

                if os.path.exists('dane.xlsx'):
                    wb = openpyxl.load_workbook('dane.xlsx')
                    sheet = wb.active
                else:
                    wb = openpyxl.Workbook()
                    sheet = wb.active
                    sheet['A1'] = "Tekst"
                    sheet['B1'] = "Liczba wystąpień"
                    sheet['D1'] = "Najwięcej zamówień"
0

Ogólnie błąd pojawia się dlatego ze nie ma pliku [Content_Types].xml bo zawartość pliku `.xlsx' nie posiada tego elementu i trzeba to sprawdzić.

w plikach plik.xlsx jak otworzy się go za pomocą programu do archiwów pojawi się lista plików i powinien być tam ten plik
screenshot-20240517094238.png

już w plikach plik.xls (tego pliku nie ma) , jak otworzy się go za pomocą programu do archiwów to go nie ma
screenshot-20240517094516.png

najpierw trzeba sprawdzić czy zostało zmienione tylko rozszerzenie bo zmiana rozszerzenia z .xls na .xlsx nie powoduje dodania tego pliku. [Content_Types].xml, . Natomiast jak otworzysz to Excelem to nic się nie dzieje bo samo powinno zmienić np otwarcie i klikniecie zapisz buttona doda ten plik. Dopiero to powoduje dodanie tego pliku. Dodatkowo z tego co pisze biblioteka nie obsługuje plików typu plik..xls .
natomiast obsługuje pliki xlsx/xlsm/xltx/xltm. jeżeli były to pliki .xls to trzeba przekonwertować je do xlsx.

Można jeszcze sprawdzić ten watek (np Przekonwertować .xls do .xlsx, lub jeśli jest to plik Open Office to analogicznie)

https://stackoverflow.com/questions/9918646/how-to-convert-xls-to-xlsx

1 użytkowników online, w tym zalogowanych: 0, gości: 1