python -m Web服务器模块 [端口号,默认8000]
例如:
python -m SimpleHTTPServer 8080
然后就可以在浏览器中输入
h ttp://loca lhost:端口号/路径
来访问服务器资源。
例如:
h ttp://local host:808 0/index.h tm(当然index.htm文件得自己创建)
其他机器也可以通过服务器的IP地址来访问。
1、准备两个邮箱帐号,一个是常用的(接收端),另一个可以注册网易163邮箱或者foxmail邮箱也可(发送端),本次我使用两个QQ邮箱进行演示。
2、在邮箱的设置
3、账户中开启SMTP功能,如下图:
4、点击生成授权码,按照弹出窗口的提示发送短信,发送后单击我已发送按钮。
5、将生成的授权码复制下来以备接下来使用。如下图:
6、我们来编辑代码:
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr,formataddr
import smtplib
def _format_addr(s):
name,addr = parseaddr(s)
return formataddr((Header(name,'utf-8').encode(),addr))
#发件人地址
from_addr = '10******10@qq.com'
#密码刚才复制的邮箱的授权码
password = 'u*******************g'
#收件人地址
to_addr = '10********28@qq.com'
#邮箱服务器地址
smtp_server = 'smtp.qq.com'
#设置邮件信息
msg = MIMEText('Python爬虫运行异常,异常信息为遇到HTTP 403','plain','utf-8')
msg['From'] = _format_addr('Python爬虫一号<%s>'%from_addr)
msg['To'] = _format_addr('管理员<%s>'%to_addr)
msg['Subject'] = Header('一号爬虫运行异常.','utf-8').encode()
#发送邮件
server = smtplib.SMTP_SSL(smtp_server,465)
#打印出和SMTP服务器交互的所有信息
server.set_debuglevel(1)
#登录SMTP服务器
server.login(from_addr,password)
#sendmail():发送邮件,由于可以一次发给多个人,所以传入一个list邮件正文是一个str,as_string()把MIMEText对象变成str。
server.sendmail(from_addr,to_addr,msg.as_string())server.quit()print('邮件发送成功!')
7、登录接收端邮箱,查看是否发送成功,如下图:
8、如果能成功收到邮件的话就说明完成了。
原创:失败原因可能有如下:1、主机与邮件服务器网络不通;2、邮件发送账号密码未设置或者设置不正确;3、python语法不正确
解决办法:1、主机与邮件服务器网络不通:需要保证主机可以正常访问外网,这样就可以访问到邮件服务器了。2、邮件账号密码未设置或者不正确:首先通过其他浏览器进行邮箱登陆验证,若可以正常登录说明邮箱账号正确,再根据你自己设置的邮箱账号配置文件的格式要求进行修改即可。3、python语法不正确,脚本编写完成之后可以执行如下命令进行语法校验:pyhton -c sendmail.py 这样就可以校验你的sendmail.py脚本的语法是否有问题,若有问题只需要根据提示定位到相应的行进行修正即可。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)