gpt4 book ai didi

python - Smtplib 代码在适用于 Linux 的 python3.7 中工作,但不适用于 Windows 10

转载 作者:太空宇宙 更新时间:2023-11-03 20:23:29 25 4
gpt4 key购买 nike

我正在尝试使用 python3.7 通过 Outlook 发送自动邮件。smtlib 代码对于 Linux 中安装的 python 运行良好,而相同的代码在 Windows 中返回错误。

import time, os, smtplib
from datetime import datetime
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
from email import encoders


print("sam")
s = smtplib.SMTP('smtp-mail.outlook.com', 587)
print("sam1")
s.starttls()
print("sam2")
s.login("samgupta@xyz.com", "Welcome")
message = "Hi"
print("sam3")
s.sendmail("samgupta@xyz.com", "abc@xyz.com", message)
s.quit()

这是我在 Windows python 中收到的错误消息:

Traceback (most recent call last): File "C:/Users/sysadmin/Desktop/mail.py", line 10, in s = smtplib.SMTP('smtp-mail.outlook.com', 587) File "C:\Users\sysadmin\AppData\Local\Programs\Python\Python37-32\lib\smtplib.py", line 251, in init (code, msg) = self.connect(host, port) File "C:\Users\sysadmin\AppData\Local\Programs\Python\Python37-32\lib\smtplib.py", line 336, in connect self.sock = self._get_socket(host, port, self.timeout) File "C:\Users\sysadmin\AppData\Local\Programs\Python\Python37-32\lib\smtplib.py", line 307, in _get_socket self.source_address) File "C:\Users\sysadmin\AppData\Local\Programs\Python\Python37-32\lib\socket.py", line 727, in create_connection raise err File "C:\Users\sysadmin\AppData\Local\Programs\Python\Python37-32\lib\socket.py", line 716, in create_connection sock.connect(sa) TimeoutError: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond

最佳答案

你能试试这个吗?这应该打印异常,一旦我们知道问题的性质,我们就可以解决问题。

import smtplib
global server
try:
server = smtplib.SMTP_SSL( < host >, < port >)
except Exception as e:
print("{}".format(e))

try:
server.login("your username", "your password")
except Exception as e:
print("{}".format(e))
server.sendmail(
"from@address.com",
"to@address.com",
"this message is from python")
server.quit()

关于python - Smtplib 代码在适用于 Linux 的 python3.7 中工作,但不适用于 Windows 10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58004577/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com