Yahooのメールサーバーにsmtplibを使用してログインできません。
Gmailは問題なくできました。
メールアドレスとパスワードはコピペして使っているので間違いはないはずです。
Gmailの時もそうでしたがYahooメールのアカウントの設定で外部のSMTPの許可は有効にしております。
実行環境はIDLEです。
Python
1>>> import smtplib 2>>> server = smtplib.SMTP_SSL("smtp.mail.yahoo.co.jp" ,465) 3>>> type(server) 4<class 'smtplib.SMTP_SSL'> 5>>> server.ehlo() 6(250, b'smtpgate610.mail.ssk.ynwp.yahoo.co.jp\nPIPELINING\n8BITMIME\nSIZE 25600000\nAUTH PLAIN LOGIN XYMYCONNECT') 7>>> server.login("自分のメール", "パスワード")
エラーメッセージ
Traceback (most recent call last): File "<pyshell#14>", line 1, in <module> server.login("*********", "*********") File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/smtplib.py", line 723, in login (code, resp) = self.auth( File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/smtplib.py", line 635, in auth (code, resp) = self.docmd("AUTH", mechanism + " " + response) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/smtplib.py", line 424, in docmd self.putcmd(cmd, args) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/smtplib.py", line 371, in putcmd self.send(str) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/smtplib.py", line 363, in send raise SMTPServerDisconnected('please run connect() first') smtplib.SMTPServerDisconnected: please run connect() first
Python
1server.connect() 2# .login)のエラーメッセージに先にconnect()しろと書いてあるので試しましたが下記のエラーが出ました
そもそも本を参考しにて実行しているのですが、connect()は必要あるのでしょうか?
Gmailにログインはできましたがその時はconnectメソッドは使用しておりません。
.connect()実行後ののエラー
Traceback (most recent call last): File "<pyshell#15>", line 1, in <module> server.connect() File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/smtplib.py", line 339, in connect self.sock = self._get_socket(host, port, self.timeout) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/smtplib.py", line 1040, in _get_socket new_socket = super()._get_socket(host, port, timeout) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/smtplib.py", line 310, in _get_socket return socket.create_connection((host, port), timeout, File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socket.py", line 843, in create_connection raise err File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socket.py", line 831, in create_connection sock.connect(sa) ConnectionRefusedError: [Errno 61] Connection refused
自分なりに色々、調べたのですが解決策が見つからなかったので質問させていただきました。
よろしくお願いします。
Yahooの設定ページ
https://support.yahoo-net.jp/PccMail/s/article/H000007321
あなたの回答
tips
プレビュー