无法与py2xe捆绑,但仍希望包含tkinter,尽管它没有被使用

时间:2015-01-29 09:34:15

标签: python tkinter console bundle py2exe

py2exe一直让我疯了。

我试图捆绑一个没有GUI或任何东西的小应用程序,即使我没有使用TKinter,py2exe仍然希望将它捆绑在.exe中。

我是这方面的初学者,所以如果我的应用代码不是那么好,那就是原因。

以下是我的代码

from PIL import Image
import glob
import os
file_types = ("*.jpg", "*.jpeg", "*.tif", "*.tiff", "*.png", "*.bmp")

image_list = []

for images in file_types :
    image_list.extend(glob.glob(images))

maxW = 1920
maxH = 1920

def ResizeImages(image_list) :
    if not os.path.exists("done") :
        os.makedirs("done")

    for image in image_list :
        img = Image.open(image)
        imgnoext = os.path.splitext(image)[0]
        width = img.size[0]
        height = img.size[1]
        ratio = float(width) / float(height)
        if width > maxW :
            height = int(maxW / ratio)
            resized = img.resize((maxW,height), Image.ANTIALIAS)
            resized.save("done/" + imgnoext + ".jpg", format="JPEG", quality=90)
        elif height > maxH :
            width = int(maxW * ratio)
            resized = img.resize((width,maxH), Image.ANTIALIAS)
            resized.save("done/" + imgnoext + ".jpg", format="JPEG", quality=90)
        else :
            img.save("done/" + imgnoext + ".jpg", format="JPEG", quality=90)

ResizeImages(image_list)

这是setup.py

from distutils.core import setup
import py2exe, sys, os

sys.argv.append('py2exe')

setup(
    options = {
        'py2exe': {'bundle_files': 1, 'compressed': True}},
    console = [{'script': "resize.py"}],
    zipfile = None
)

每当我尝试捆绑它时,都会发生这种情况:

running py2exe

  11 missing Modules                 
  ------------------                 
? PIL._imagingagg                     imported from PIL.ImageDraw
? PyQt4                               imported from PIL.ImageQt
? PyQt5                               imported from PIL.ImageQt
? PySide                              imported from PIL.ImageQt
? _grabscreen                         imported from PIL.ImageGrab
? _imaging_gif                        imported from PIL.GifImagePlugin
? _util                               imported from PIL.ImageCms
? cffi                                imported from PIL.Image, PIL.PyAccess
? readline                            imported from cmd, code, pdb
? win32api                            imported from platform
? win32con                            imported from platform
OOPS: tkinter 2

我做错了什么?我需要将其捆绑,以便它可以在任何安装了Python或不安装Python的Windows机器上运行。

1 个答案:

答案 0 :(得分:0)

我已经尝试过,并且无法使用py2exe捆绑它。

如果其他人遇到此问题,请使用PyInstaller。它第一次工作,没有任何问题。