开发者社区 > 云原生 > Serverless > 正文

使用函数计算FC python 发邮件 遇到"errorMessage": "[Errno 101

使用函数计算FC python 发邮件 遇到 "errorMessage": "[Errno 101] Network is unreachable", "errorType": "OSError",

在windows上是可以运行的 代码: ` #设置服务器所需信息 # 163邮箱服务器地址 mail_host = 'smtp.qq.com' # 163用户名 mail_user = '35xxxx883@qq.com' # 密码(部分邮箱为授权码) mail_pass = 'dhjc' # 邮件发送方邮箱地址 sender = '3xxxxxxxxxxx@qq.com' # 邮件接受方邮箱地址,注意需要[]包裹,这意味着你可以写多个邮件地址群发 receivers = ['35xxxxxxx@qq.com']

# 设置email信息
# 邮件内容设置
#message = MIMEText(texe, 'plain', 'utf-8')
message = MIMEText(text,'html','UTF-8')
# 邮件主题
message['Subject'] = title
# 发送方信息
message['From'] = sender
# 接受方信息
message['To'] = receivers[0]

# 登录并发送邮件
try:
    smtpObj = smtplib.SMTP()
    # 连接到服务器
    smtpObj.connect(mail_host, 25)
    #下面这一行是在网上找的 加上也不行
    smtpObj.ehlo(mail_host)
    # 登录到服务器
    smtpObj.login(mail_user, mail_pass)
    # 发送
    smtpObj.sendmail(
        sender, receivers, message.as_string())
    # 退出
    smtpObj.quit()
    print('Mailsuccess')
except smtplib.SMTPException as e:
    print('Mailerror', e)  # 打印错误

` 请问是为什么呀 该怎么修改呢?

展开
收起
1119863213736931 2022-08-07 15:41:46 434 0
1 条回答
写回答
取消 提交回答
  • nnn

    这是一个基本的Python发送邮件的代码,但是由于一些原因,你的代码无法正常运行。具体来说,你的代码遇到了以下两个问题:

    网络连接问题:你的代码中使用了smtpObj.connect(mail_host, 25)来连接到服务器,但是这一行代码可能无法正常工作。这是因为你的Flink项目中使用的是旧版本的Flink库,而这个版本的库可能不支持发送邮件的功能。建议你检查一下你的Flink项目中使用的所有库和框架是否都是最新的版本,以确保你的项目能够正常运行。 发送邮件的内容问题:你的代码中使用了message = MIMEText(texe, 'plain', 'utf-8')来创建一个MIMEText对象,并将邮件的内容设置为文本。但是,这段代码可能无法正常工作。这是因为你的Flink项目中使用的是旧版本的Flink库,而这个版本的库可能不支持发送包含HTML内容的邮件。建议你检查一下你的Flink项目中使用的所有库和框架是否都是最新的版本,以确保你的项目能够正常运行。 为了解决这些问题,你可以考虑以下几种方法:

    更新你的Flink项目中使用的所有库和框架,以确保你的项目能够正常运行。 使用更高版本的Flink库,这个版本的库应该支持发送邮件的功能。 使用第三方库来发送邮件,例如smtplib库。 希望这些信息能够帮助你解决问题。如果你有任何其他问题,请随时向我提问。

    2023-07-05 20:59:11
    赞同 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    Hologres Serverless之路:揭秘弹性计算组 立即下载
    Serverless开发平台: 让研发效能再提升 立即下载
    Serverless 引领云上研发新范式 立即下载