如何让py2exe在lxml文件夹中导入我的etree.pyd?
当我这样做时
includes = ['lxml.etree']
我收到错误:importerror no module named lxml.etree
。如果我进入python控制台并输入
from lxml import etree
import lxml
lxml.etree
两者都很好。我做错了什么?
答案 0 :(得分:0)
你真的不应该明白这一点;模块查找器应该找到依赖项并自动添加它 - 如果没有,并且你不知道这是一个很好的理由,你应该调试它(使用文档中描述的py2exe.mf
)第一
但是如果你确实需要这个,那么你需要整个lxml
包,而不仅仅是lxml.etree
。所以,只需替换:
includes = ['lxml.etree']
... with:
packages = ['lxml']
或者,如果您只想包含软件包的顶层和etree
子包 - 我不确定它是否真的有效(无论是在设置时还是在运行时),但它可能:
includes = ['lxml', 'lxml.etree']