如何修复exe文件的PackageNotFoundError

2024-10-03 23:21:03 发布

您现在位置:Python中文网/ 问答频道 /正文

它给我的错误后,我才把它转换成一个exe,作为一个.py文件正常工作

我试图找到丢失的文件并替换它,但仍然没有用。 我得到的错误是:

Traceback (most recent call last):

File "tkinter_init_.py", line 1705, in call

File "CompilerGui.py", line 259, in

done = ttk.Button(window, text="Compile", command=lambda:finish(texts, window, search_folder))

File "CompilerGui.py", line 210, in finish cb.the_main(q_list, values)

File "CompilerBase.py", line 323, in the_main

file_written = write_docx(values_dict, file_to_write)

File "CompilerBase.py", line 100, in write_docx

my_docx = docx.Document()

File "site-packages\docx\api.py", line 25, in Document

File "site-packages\docx\opc\package.py", line 128, in open

File "site-packages\docx\opc\pkgreader.py", line 32, in from_file

File "site-packages\docx\opc\phys_pkg.py", line 31, in new

docx.opc.exceptions.PackageNotFoundError: Package not found at 'C:\Users\LENOVO\AppData\Local\Temp_MEI92522\docx\templates\default.docx'


Tags: 文件inpypackages错误linesitecall
3条回答

我想出了解决问题的办法,就是找一个不存在的文件夹。我是这样修复的:https://youtu.be/bB9RXak4eVY

.spec文件中,我想您可以添加:

datas= [ ('C:\\Program Files\\Python36\\Lib\\site-packages\\docx\\templates\\*', 'docx\\templates' ) ],

Analysis部分,将缺少的文件添加到exe。当然,这假设丢失的default.docx在指定的文件夹中。你知道吗

另一个相当简单的修复方法是将default.docx复制到应用程序目录中,将my_docx = docx.Document()更改为my_docx = docx.Document(docx='default.docx'),然后将datas=[('default.docx', '.')]添加到.spec文件中。你知道吗

相关问题 更多 >