如何使用py2exe打包Twisted程序?

11

我尝试使用py2exe打包一个Twisted程序,但一旦我运行我构建的exe文件,就会出现“找不到resource模块”的错误。

我发现py2exe说:

似乎缺少以下模块 ['FCNTL', 'OpenSSL', 'email.Generator', 'email.Iterators', 'email.Utils', 'pkg_resources', 'pywintypes', 'resource', 'win32api', 'win32con', 'win32event', 'win32file', 'win32pipe', 'win32process', 'win32security']

那么我该如何解决这个问题呢?

谢谢。

2个回答

11

我以前见过这个问题... py2exe不知何故无法检测到这些模块需要被包含在ZIP存档中,因此没有将它们包含在内。

您可以在py2exe命令行中显式指定要包含的模块:

python setup.py py2exe -p win32com -i twisted.web.resource

类似这样。查阅选项并进行试验。


请给我指点迷津,谢谢。在更新的版本中,你需要使用“cookielib” - 我之前已将其列入黑名单以排除它并减轻负担。 - totaam

0

邮件模块也遇到了同样的问题。我通过在setup.py中显式包含模块来解决了这个问题:

旧的setup.py:

setup(console = ['main.py'])

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接