利用python发邮件和短信

发邮件: 以163邮箱为例,要利用SMTP服务器

#发邮件的库
import smtplib
#邮件文本
from email.mime.text import MIMEText

#创建基础对象
#SMTP服务器
SMTPServer = "smtp.163.com"
#发邮件的地址
sender = "********@163.com"
#发送者邮箱的密码
passwd = "********"

#创建邮件对象
#设置发送的内容
message = "sunck is a good man"
#转换成邮件文本
msg = MIMEText(message)
#标题
msg["Subject"] = "来自帅哥的问候"
#发送者
msg["From"] = sender

#运用上面的对象完成发邮件的功能
#创建SMTP服务器
mailServer = smtplib.SMTP(SMTPServer, 25)
#登陆邮箱
mailServer.login(sender, passwd)
#发送邮件
mailServer.sendmail(sender, ["suncksunck@163.com"], msg.as_string())
#退出邮箱
mailServer.quit()

发短信验证码: 以互亿无线为例

# 接口类型:互亿无线触发短信接口,支持发送验证码短信、订单通知短信等。
# 账户注册:请通过该地址开通账户http://sms.ihuyi.com/register.html
# 注意事项:
# (1)调试期间,请用默认的模板进行测试,默认模板详见接口文档;
# (2)请使用APIID(查看APIID请登录用户中心->验证码短信->产品总览->APIID)及 APIkey来调用接口;
# (3)该代码仅供接入互亿无线短信接口参考使用,客户可根据实际需要自行编写;

# !/usr/local/bin/python
# -*- coding:utf-8 -*-
import http.client
import urllib

#创建基础信息对象
host = "106.ihuyi.com"
sms_send_uri = "/webservice/sms.php?method=Submit"
# 用户名是登录用户中心->验证码短信->产品总览->APIID
account = "**********"
# 密码 查看密码请登录用户中心->验证码短信->产品总览->APIKEY
password = "****************"

#创建任务对象
def send_sms(text, mobile):
    params = urllib.parse.urlencode(
        {'account': account, 'password': password, 'content': text, 'mobile': mobile, 'format': 'json'})
    headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}
    conn = http.client.HTTPConnection(host, port=80, timeout=30)
    conn.request("POST", sms_send_uri, params, headers)
    response = conn.getresponse()
    response_str = response.read()
    conn.close()
    return response_str

#如果是直接运行则执行主程序中的任务
if __name__ == '__main__':
    mobile = "12345678900"    #电话号可改
    text = "您的验证码是:123456。请不要把验证码泄露给其他人。"    #验证码的数字可改,文本内容不可改

    print(send_sms(text, mobile))