首页 > 解决方案 > 无法使用 pyinstaller 执行脚本 py 到 exe

问题描述

我阅读了 10 多个相关主题,但没有一个对我有解决方案。

我包含以下模块:

import sys
import os
import cv2
import xlsxwriter
from tkinter import *
from tkinter import ttk
from tkinter import filedialog
from tkinter.messagebox import showinfo

并尝试了几种方法:

它是否可以作为单个文件夹或单个文件工作并不重要。我更喜欢单个文件输出,但如果不可能,单个文件夹也可以。

我尝试使用 3.8.5 和 3.7。

有任何想法吗?

标签: python-3.xtkinterpyinstaller

解决方案


我个人对这些错误所做的,是在logging发生致命错误时使用 python 模块生成一个日志文件,这样我就知道会发生什么。然后以后调试起来就容易多了

您应该做的是将整个脚本包装在 try/except 块中,其中将异常写入日志文件

类似于以下几行的内容(仅在发生错误时创建日志文件)

import logging
lh = logging.FileHandler(filename='mf_timer.log', mode='w', delay=True)
logging.basicConfig(handlers=[lh],
                    format='%(asctime)s,%(msecs)d %(name)s %(levelname)s %(message)s',
                    datefmt='%H:%M:%S',
                    level=logging.WARNING)

try:
    <enter your main script here (including imports)>
except Exception as e:
    logging.exception(e)
    raise e

将此添加到您的代码中,然后重新创建可执行文件并运行它。您现在应该得到一个显示错误的日志文件


推荐阅读