gpt4 book ai didi

Python 在 smtplib.SMTP ("smtp.gmail.com"上卡住,587)

转载 作者:太空宇宙 更新时间:2023-11-04 09:43:46 25 4
gpt4 key购买 nike

我正在尝试创建一个使用 Gmail 发送电子邮件的脚本。但是,当运行以下行时,我的代码卡住了:

smtplib.SMTP("smtp.gmail.com", 587)

这是在我输入用户名和密码之前,所以它与我的 Gmail 帐户无关。为什么会这样?我正在使用 Python 3.6.3

完整代码如下:

import smtplib

# Specifying the from and to addresses

fromaddr = 'XXX@gmail.com'
toaddrs = 'YYY@gmail.com'

# Writing the message (this message will appear in the email)

msg = 'Enter you message here'

# Gmail Login

username = 'XXX@gmail.com'
password = 'PPP'

# Sending the mail

server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(username,password)
server.sendmail(fromaddr, toaddrs, msg)
server.quit()

最佳答案

这很可能是防火墙或类似问题。在有问题的机器上,尝试在命令行上运行:

ping smtp.gmail.com

假设可行,然后尝试:

telnet smtp.gmail.com 587

我假设有一台 Linux 机器使用这个命令。你需要适应其他人。如果连接成功,请键入 ehlo list,命令应该会显示一些信息。输入 quit 退出。

如果这不起作用,请检查您的 iptables。

sudo iptables -L

这将在 Chain INPUT 下显示类似 ACCEPT all 的内容,否则,您需要确保您正在接受已建立的连接,例如:

ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED

输出链通常是开放的,但你也应该检查一下。

如果您使用的是 AWS,请检查您的安全组是否阻止传出连接。

关于Python 在 smtplib.SMTP ("smtp.gmail.com"上卡住,587),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50624003/

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