Linux系统分别调用不同邮件服务器465端口发送短信-阿里云开发者社区

开发者社区> 阳阳000> 正文

Linux系统分别调用不同邮件服务器465端口发送短信

简介: 环境:centos7.2 python2.7.6 简介:通过编写的Python 脚本实现调用不同的邮件服务器465 端口发送短信。共四个。 脚本内容如下,具体内容不做介绍,主要是讲解如何通过该脚本实现上述需求。
+关注继续查看

环境:centos7.2 python2.7.6 简介:通过编写的Python 脚本实现调用不同的邮件服务器465 端口发送短信。共四个。 脚本内容如下,具体内容不做介绍,主要是讲解如何通过该脚本实现上述需求。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
print("邮件发送测试默认使用的是465端口,邮件主机是使用的smtp.163.com")
my_sender = raw_input("邮件账户:")
my_pass = raw_input("邮件密码:")
my_user = raw_input("收件人:")

def mail():
    ret=True
    try:
        msg=MIMEText('填写邮件内容','plain','utf-8')
        msg['From']=formataddr(["我是发件人",my_sender])  # 括号里的对应发件人邮箱昵称、发件人邮箱账号
        msg['To']=formataddr(["我是收件人",my_user])              # 括号里的对应收件人邮箱昵称、收件人邮箱账号
        msg['Subject']="我是邮件主题发送邮件测试"                # 邮件的主题,也可以说是标题

        server=smtplib.SMTP_SSL("smtp.163.com", 465)  # 发件人邮箱中的SMTP服务器,端口是加密465端口
        server.login(my_sender, my_pass)  # 括号中对应的是发件人邮箱账号、邮箱密码
        server.sendmail(my_sender,[my_user,],msg.as_string())  # 括号中对应的是发件人邮箱账号、收件人邮箱账号、发送邮件
        server.quit()  # 关闭连接
    except Exception:  # 如果 try 中的语句没有执行,则会执行下面的 ret=False
        ret=False
    return ret

ret=mail()
if ret:
    print("邮件发送成功")
else:
    print("邮件发送失败")

测试一:

通过该脚本调用 163 邮箱的 smtp 465 端口发送短信。测试前,如果没有 163 邮箱需要首先注册一个 163 邮箱。
1

参考上述信息填写好注册信息后 ,点击 立即注册。然后在新界面点击进入邮箱。

2
进入邮箱界面后 点击设置--选择如下图标注选项。
3
然后再下图勾画部分设置授权码
4
设置授权码的时候 需要您重新验证 手机验证码、
5
然后输入授权码,此授权码后续发送邮件需要用到。
6
后续就需要我们连接centos 服务器。然后 vim 创建一个 sendmail.py 文件。将脚本内容粘贴进去,因为脚本默认是 163 的 。所以不用进行更改。
7
保存后退出,然后chmod +x sendmail.py 给对应脚本文件授权。并执行python sendmail.py 然后输入163 账号 授权码,收件人邮箱地址,然后依次回车就可以看是否发送成功。效果如图。
8
二,通过qq邮箱smtp 发送邮件。

第一步注册qq邮箱,详细过程就不介绍了。和 163 邮箱注册流程基本一致。

qq 邮箱注册好后,点击设置界面。如下图。
qq1
找到如图所示位置
qq2
点击验证后会有一个授权码出现,该授权码就是用来发送邮件时需要验证的 。
qq_
上述流程 操作完毕后,接下来就是 打开centos 系统 找到对应脚本,进行 修改。qq邮箱可以修改为smtp.qq.com 465 端口不变 脚本上方的 print 那也可以修改下,这个只是一个输出的内容。为了看着舒服,如果你通过qq 邮箱发送邮件就把后面的smtp地址修改为qq 的就可以了。
qq_
接下来验证下成果。成功接收到了邮件。
qq_
测试三。验证通过阿里云个人邮箱发送邮件。

首先注册一个 阿里邮箱。注册好后该smtp 和 pop 是默认开启的。不用单独设置授权码,

直接登陆centos 服务器,打开sendmail 脚本。然后 修改 邮件服务器为 smtp.aliyun.com 保存 。退出。
_1

直接验证是否可以发信。测试成功,但是没有收到邮件。最后发现是被认定为垃圾邮件被退信了。。。。
_
测试四 通过139邮箱发送邮件。139 邮箱smtp默认开启。地址是smtp.139.com
139

测试发送。成功。
139_

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
linux搭建邮件服务器
一、概述:   在配置邮件服务器之前,先解释几个概念。   通常使用Email都很容易,但是Internet的邮件系统是通过几个复杂的部分连接而成的,对于最终用户而言,我们熟悉的Outlook,Foxmail等都是用来收信和发信的,称之为MUA:Mail User Agent,邮件用户代理。
7254 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
12078 0
Linux下C编程,进程通信之标准流管道通信(即系统调用)
1.概述   在编程的过程中总会需要使用系统调用,如linux下的ps,touch,rm,grep命令等;windows下的dir,mkdir,del命令等。   在linux中执行系统调用,通常使用标准流管道。
1014 0
+关注
5
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载