Python 再次使用py2exe和电子邮件libs

Python 再次使用py2exe和电子邮件libs,python,py2exe,Python,Py2exe,以下进口: import pyodbc, sys, smtplib, os from datetime import date from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.mime.base import MIMEBase import email.iterators import email.generator from email import E

以下进口:

import pyodbc, sys, smtplib, os
from datetime import date
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
import email.iterators
import email.generator
from email import Encoders 
在Python2.6中使用py2exe创建exe时可以正常工作,但在Python2.5中不能

似乎缺少以下模块 ['email.Encoders','email.Generator','email.Iterators','email.MIMEText','email.Utils','email.base64MIME']

Setup.py:

from distutils.core import setup
import py2exe, glob
import modulefinder

modulefinder.AddPackagePath("mail.mime", "base")
modulefinder.AddPackagePath("mail.mime", "multipart")
modulefinder.AddPackagePath("mail.mime", "nonmultipart")
modulefinder.AddPackagePath("mail.mime", "audio")
modulefinder.AddPackagePath("mail.mime", "image")
modulefinder.AddPackagePath("mail.mime", "message")
modulefinder.AddPackagePath("mail.mime", "application")

setup(
    console=['capfile_tester.py'],
    options = { "py2exe": { "includes": "decimal, datetime, email" } })

我以为我解决了一个问题,但不幸的是我不得不尝试python2.5。

Py2Exe在编译exe中的各种模块时有很多错误。我自己也有这种问题。我的建议是使用pyInstaller,在我看来,pyInstaller更好、更容易使用。

对电子邮件模块也有同样的问题。尽管它给出了很多模块丢失的警告,但当我运行时,我只面临两个问题:一个是多部分问题,另一个是文本问题。我通过在setup.py中显式地包含这两个模块来实现它:

旧setup.py包含:

setup(console = ['main.py'])
setup(console = ['main.py'], 
      options={"py2exe":{"includes":["email.mime.multipart","email.mime.text"]}})
New setup.py包含:

setup(console = ['main.py'])
setup(console = ['main.py'], 
      options={"py2exe":{"includes":["email.mime.multipart","email.mime.text"]}})