python smtp邮件发送失败怎么办

python smtp邮件发送失败怎么办,第1张

原创:

失败原因可能有如下:1、主机与邮件服务器网络不通;2、邮件发送账号密码未设置或者设置不正确;3、python语法不正确

解决办法:1、主机与邮件服务器网络不通:需要保证主机可以正常访问外网,这样就可以访问到邮件服务器了。2、邮件账号密码未设置或者不正确:首先通过其他浏览器进行邮箱登陆验证,若可以正常登录说明邮箱账号正确,再根据你自己设置的邮箱账号配置文件的格式要求进行修改即可。3、python语法不正确,脚本编写完成之后可以执行如下命令进行语法校验:pyhton -c sendmailpy 这样就可以校验你的sendmailpy脚本的语法是否有问题,若有问题只需要根据提示定位到相应的行进行修正即可。

引用头文件

#!/usr/bin/env python

#--coding:utf-8--

import smtplib

import os

from emailmimetext import MIMEText

from emailmimemultipart import MIMEMultipart

from emailmimebase import MIMEBase

from email import encoders

创建“连接邮件服务器”函数

def smtp_connect( smtp_server, account, password, target ):

global smtp

global e_smtpserver

global e_account

global e_password

global e_target

global msg

e_smtpserver = smtp_server

e_account = account

e_password = password

e_target = target

try:

smtp = smtplibSMTP()

smtpconnect(e_smtpserver)

smtplogin(e_account, e_password)

except Exception, e:

print 'Mail connect failed: %s' % e

exit( -1 )

msg = MIMEMultipart('related')

创建“写邮件内容”函数

def smtp_set_content( subject, main_body ):

global msg

msg['Subject'] = subject

body = MIMEText( main_body, 'plain', 'utf-8' )

msgattach( body )

创建“添加附件”函数

def smtp_set_attachment( file_path ):

global msg

part = MIMEBase( 'application', 'octet-stream' )

partset_payload( open(file_path,'rb')read() )

encodersencode_base64(part)

partadd_header( 'Content-Disposition', 'attachment; filename=%s' % file_pathsplit('/')[-1] )

msgattach(part)

创建“发送邮件”函数

def smtp_send():

global smtp

global e_smtpserver

global e_account

global e_password

global e_target

global msg

try:

smtpsendmail( e_account, e_target, msgas_string() )

except Exception, e:

print 'Mail send Failed: %s' % e

exit( -1 )

使用示例

if __name__ == '__main__':

smtp_connect( 'smtpxxxxcomcn', 'xxxx@xxxxcomcn', 'password',

'xxxx@xxxxcomcn' )

smtp_set_content( 'Test subject', 'Test_content' )

smtp_set_attachment( osgetcwd() + '/mailpy' )

smtp_send()

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » python smtp邮件发送失败怎么办

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情