0

我正在尝试为具有邮件功能的 ESXi 上的 BusyBox 编写 python 脚本。它运行 Python 2.5,但缺少一些库(即 smtplib)。我下载了 Python2.5 源并将 lib 文件夹复制到 ESXi。现在我正在尝试通过“import lib.smtplib”导入 smtplib,但 Python 说:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/pysexi/lib/smtplib.py", line 46, in <module>
 import email.Utils
 File "/pysexi/lib/email/__init__.py", line 115, in <module>
 setattr(sys.modules['email'], _name, importer)
KeyError: 'email'

我被困住了。因此,每一个帮助和每一个想法都值得赞赏!

4

2 回答 2

1

尝试在设备或自定义操作系统上安装通用应用程序总是很有趣。

只是一个猜测,但它可能是电子邮件库是一个编译的 C 模块 - 即不是纯 python。

我会尝试使用完全是 python 的库,没有编译代码——我不知道这些库是否有纯 python 版本。

选项是尝试追踪 ESXi 所基于的操作系统版本,然后使用该操作系统中匹配的 python 版本。

于 2012-10-23T00:21:01.783 回答
0

我对 BusyBox 或 ESXi 一无所知 - 因此这可能更像是一个建议而不是答案,但您可能会考虑使用支持 HTTP 或 RESTful API 的电子邮件服务 - 例如 MailGun。他们有一个每天最多 200 封电子邮件的免费计划,因此它可能不会花费您任何费用。

同样,这种方式更像是一个建议或计划“B”(如果没有人可以帮助您解决这个特定问题)

于 2012-10-23T00:30:58.097 回答