在Python2.7(而不是3)中使用starttls连接到IMAP Exchange

2024-10-01 17:41:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我刚刚发现python3支持starttlsconnect,但不支持python2.7

但我当前的大python代码运行在python2.7上,所以不能立即转到3。在

那么,我可以用imap和starttls安全性连接到microsoftexchangeserver吗?在

需要更多细节吗?在


Tags: 细节python3imap代码运行starttlsmicrosoftexchangeserverstarttlsconnect
1条回答
网友
1楼 · 发布于 2024-10-01 17:41:07

一段时间过去了,但我希望这对其他人有帮助。您可以使用带有python3或python2的imaplib通过TLS连接到Exchange。在

Python3有IMAP4.starttls()方法,Python2没有。对于python2,请改用IMAP4_SSL子类。以下片段来自通过TLS连接到office365.com的工作解决方案。在

Python 3

from imaplib import IMAP4
. . .

    def _connect(self, host, username, password, use_tls=False):
        """Establishes an IMAP connection, optionally over TLS."""
        try:
            src = IMAP4(host)
            if use_tls:
                src.starttls()
            src.login(username, password)
        except . . .

Python 2

^{pr2}$

相关问题 更多 >

    热门问题