私はpythonスクリプトを使って電子メールを自動送信しようとしています。私は現在、openssl s_clientを使用してサーバーに接続するためのexpectスクリプトを使用しています。現在は、ユーザー名のパスワードとともに証明書ファイルのみを使用しており、電子メールを送信することができます。私は別の質問を発見しましたが、Pythonでは、暗号化されたCA証明書ファイルだけを使用するために、smtpクラスのハックまたはラッパーが必要です。キーファイルはありません。Pythonを使用してTLS経由で電子メールを送信
>>> smtpobj = smtplib.SMTP("mymailserver.com",465)
Traceback (innermost last):
File "<stdin>", line 1, in <module>
File "C:\Program Files (x86)\Python35-32\lib\smtplib.py", line 251, in __init__
(code, msg) = self.connect(host, port)
File "C:\Program Files (x86)\Python35-32\lib\smtplib.py", line 337, in connect
(code, msg) = self.getreply()
File "C:\Program Files (x86)\Python35-32\lib\smtplib.py", line 390, in getreply
+ str(e))
smtplib.SMTPServerDisconnected: Connection unexpectedly closed: [WinError 10054] An existing connection was forcibly closed by the remote host
私が今直面している問題は、私がPythonでサーバーに接続できないことです。
私は
smtplib.SMTP_SSL(myserver, port, certfile="mycert.cert")
を介して接続するために証明書ファイルを使用する場合、それは次のようなエラーがスローされます。
ssl.SSLError: [Errno 336265225] _ssl.c:339: error:140B0009:SSL routines:SSL_CTX_use_PrivateKey_file:PEM lib
私は、certファイルなしでthunderbirdを使用してサーバーに接続できます。任意のアイデア、どのように私は電子メールを送信するためにpython smtp(tls)を使用することができますか?
あなたが使用して最初のキーパスフレーズを削除する必要が
これをクリアしていただきありがとうございます! SMTP_SSLは魅力的に機能しました – Sanjay