利用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))