- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我需要在 delbian linux 中发送电子邮件。如何发送?我在 256 MB 的 linux 机器上运行我的服务器,我听说 postfix 和 sendmail 太过分了。
最近遇到ssmtp,好像是个可执行文件,需要作为进程执行,通过python使用os模块调用。
或者,python 已经提供了 smtplib,它对我来说工作得很好。
与 python 的 smtplib 相比,使用 ssmtp 有什么优势?
最佳答案
在 Python 程序中,没有优势。
ssmtp 的唯一目的是将 SMTP 协议(protocol)包装在 sendmail API 中。也就是说,它提供了一个程序 /usr/sbin/sendmail
,它接受与成熟的 sendmail 相同的选项、参数和输入(尽管大多数选项什么都不做);但在幕后,它并不处理电子邮件本身,而是将邮件发送到 SMTP 服务器。这适用于需要有 sendmail
程序的系统,可能是因为它们不理解 SMTP - 例如,我认为旧版本的 PHP 有这个要求,即使在最近的版本中它可能仍然将 PHP 配置为使用所谓的 sendmail 接口(interface)(即程序 sendmail
)比直接使用 SMTP 更容易。 (有段时间没用PHP了,不清楚现在的状态)
然而,在 Python 中情况是相反的:你有一个内置的库,可以很容易地直接使用 SMTP,而使用 sendmail
需要你调用 subprocess
模块这有点笨拙,而且非常依赖于不属于 Python 的东西。所以基本上没有理由不使用smtplib
。
关于python - 如何在 python ssmtp 与 smtplib 中发送邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/764778/
我是一名优秀的程序员,十分优秀!