php发邮件和python发邮件

一,背景说明:

本人最近做了一个纯原生写法的小项目,没有用到框架,在遇到需要预警机制需求的时候傻眼了!毕竟一般公司内部框架里都有集成发邮件的接口,只要调用一下就可以了,但目前我的原生写法小项目无法借用框架的发邮件接口,只能自己研究一下具体的操作原理了。

二,操作步骤:

一开始以“php发送邮件”的关键字去搜索度娘、谷歌、github,搜出了一堆关于“PHP基于SMTP协议实现邮件发送”的教程,当然也有php自带的mail()函数发送邮件的案例,但是步骤都较为麻烦,基本整理出来的操作步骤包括:1.php.ini的配置修改;2.安装socket和openssl的拓展;3.引入发邮件的公用类,包括phpmailer和smtp类;4.如果类似QQ邮箱,还要去QQ邮箱开展支持smtp发送邮件设置;

require_once('class.phpmailer.php');
require_once('class.smtp.php');

  安装网上的各种教程整了好久,基本还是没有整通,最重要也没有找到正版的两个需要引入的公用类,让人简直心累;

三,python发送邮件:

后面突发奇想,想试试用python来发送邮件,于是说干就干,立马查了下具体的操作步骤,结果让我感觉吃了一‘鲸’!就简单的十来行代码的事···于是我立马给电脑配置python环境,直接copy代码下来,更换了一下发送邮箱,滴,发送成功!

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
import smtplib
from email.mime.text import MIMEText
from email.header import Header
 
# 第三方 SMTP 服务
mail_host="smtp.exmail.qq.com"  #设置服务器
mail_user="[email protected]"   #用户名
mail_pass="test123"   #口令
 
sender = '[email protected]' # 发送者邮箱
receivers = ['[email protected]']  # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
 
message = MIMEText('这是内容,可以拓展的', 'plain', 'utf-8')
message['From'] = Header("这是header头From", 'utf-8')
message['To'] =  Header("这是header头To", 'utf-8')
 
subject = '这是邮件的标题'
message['Subject'] = Header(subject, 'utf-8')
 
 
try:
    smtpObj = smtplib.SMTP()
    smtpObj.connect(mail_host, 25)    # 25 为 SMTP 端口号
    smtpObj.login(mail_user,mail_pass)  
    smtpObj.sendmail(sender, receivers, message.as_string())
    print("邮件发送成功")
except smtplib.SMTPException:
    print("Error: 无法发送邮件")

php很好,但某些场景也需要考虑到其它语言的便捷性,今天是python,明天可能是java/go/C等等···

没有谁好谁不好,主要是看需要和场景~

以上是我自己写的一些小分享,如有不到位的敬请谅解!

猜你喜欢

转载自blog.csdn.net/qq_33739423/article/details/81110896