0

如何让 py2exe 在 lxml 文件夹中导入我的 etree.pyd?

当我做

includes = ['lxml.etree']

我得到错误:importerror no module named lxml.etree。如果我进入 python 控制台并输入

from lxml import etree
import lxml
lxml.etree

两者都工作得很好。我究竟做错了什么?

4

1 回答 1

0

您真的不需要明确说明;模块查找器应该找到依赖项并自动添加它 - 如果没有,并且您不知道这样做的充分理由,您应该首先调试它(py2exe.mf如文档中所述)。

但如果你确实需要这个,你将需要整个lxml包,而不仅仅是lxml.etree. 所以,只需更换:

includes = ['lxml.etree']

… 和:

packages = ['lxml']

或者,如果您只想包含包的顶层和etree子包——我不确定这是否真的有效(在设置时或运行时),但它可能:

includes = ['lxml', 'lxml.etree']
于 2013-06-06T19:56:01.463 回答