【发布时间】:2019-09-15 10:43:57
【问题描述】:
我正在使用 imaplib 阅读一些电子邮件。此代码在 Pycharm 中正常工作。我使用 cx_Freeze 使该程序成为可执行程序,现在我收到一个错误,可追溯到 cx_Freeze 的 startup.py。我之前做过一个可执行文件,不是用imaplib,这种问题没有发生。
网上还有其他关于“模块 imaplib 没有属性 IMAP4_SSL”的帖子,但这些帖子并不能解决问题,并且可能与我的原因不同。该声明的其他原因涉及虚拟环境或与我的情况不同的事物。
完整的错误信息如下:
Traceback (most recent call last):
File "C:\Users\Todd\Desktop\Python\lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 14, in run module.run()
File "C:\Users\Todd\Desktop\Python\lib\site-packages\cx_Freeze\initscrips\Console.py", line 26, in run exec(code, m.__dict__)
File "Main.py", line 18, in <module>
File 'C:Users\Todd\Desktop\ForStemotics\EmailGetter.py", line 43, in GetEmails
mail = imaplib.IMAP4_SSL("imap.gmail.com")
AttributeError: module 'imaplib' has no attribute 'IMAP4_SSL'
在 cmets 的 setup.py 中编辑:
from cx_Freeze import setup, Executable
setup(name = 'SARS',
version='0.1',
description = 'email automator',
executables = [Executable("Main.py")])
【问题讨论】:
-
你也可以分享你的 setup.py 吗? (或任何你用来将它捆绑为可执行文件的东西)
-
好的,这是我的 setup.py:第 1 行:from cx_Freeze import setup,可执行文件,下一行:setup(name = 'SARS', version='0.1', description = 'email automator' , executables = [Executable("Main.py")]),就是这样。
-
请不要将代码放入 cmets。您可以点击 edit 链接更新您的帖子(例如添加更多信息)。这次我已经在你的 setup.py 中为你编辑了。
-
好的,谢谢,我不知道我能做到。
标签: python python-3.x cx-freeze imaplib