python发邮件给女朋友代码_python发邮件的代码

#

-*- coding: utf-8 -*-

#

=================================================

#

#

描述:    KEmail 发送邮件类

#

#

作者:    hechangmin

#

#

时间:    2008-05-30

#

#

=================================================

import

email

import

mimetypes

from

email.MIMEMultipart

import

MIMEMultipart

from

email.MIMEText

import

MIMEText

from

email.MIMEImage

import

MIMEImage

import

smtplib

from

logger

import

klog

def

sendmail(paramMap):

smtp

=

smtplib.SMTP()

msgRoot

=

MIMEMultipart(

'

related

'

)

msgAlternative

=

MIMEMultipart(

'

alternative

'

)

if

paramMap.has_key(

"

server

"

)

and

paramMap.has_key(

"

user

"

)

and

paramMap.has_key(

"

password

"

):

try

:

smtp.set_debuglevel(

1

)

smtp.connect(paramMap[

"

server

"

])

smtp.login(paramMap[

"

user

"

], paramMap[

"

password

"

])

except

:

klog.error(

"

smtp login exception!

"

)

return

False

else

:

klog.error(

"

Parameters incomplete!

"

)

return

False

#

测试发现 邮件其头部信息 比如标题 发送地址 还有抄送之类 和stmp发送的具体信息脱离。

if

(paramMap.has_key(

"

subject

"

)

and

paramMap.has_key(

"

from

"

)

and

paramMap.has_key(

"

to

"

))

==

False:

klog.error(

"

Parameters incomplete!

"

)

return

False

msgRoot[

'

subject

'

]

=

paramMap[

"

subject

"

]

msgRoot[

'

from

'

]

=

paramMap[

"

from

"

]

if

paramMap.has_key(

"

cc

"

):

msgRoot[

'

cc

'

]

=

paramMap[

"

cc

"

]

msgRoot[

'

to

'

]

=

paramMap[

"

to

"

]

msgRoot.preamble

=

'

This is a multi-part message in MIME format.

'

msgRoot.attach(msgAlternative)

TempAddTo

=

paramMap[

"

to

"

]

if

paramMap.has_key(

"

text

"

):

msgText

=

MIMEText(paramMap[

"

text

"

] ,

'

plain

'

,

'

utf-8

'

)

msgAlternative.attach(msgText)

if

paramMap.has_key(

"

html

"

):

msgText

=

MIMEText(paramMap[

"

html

"

],

'

html

'

,

'

utf-8

'

)

msgAlternative.attach(msgText)

if

paramMap.has_key(

"

image

"

):

fp

=

open(paramMap[

"

image

"

],

'

rb

'

)

msgImage

=

MIMEImage(fp.read())

fp.close()

msgImage.add_header(

'

Content-ID

'

,

'

'

)

msgRoot.attach(msgImage)

if

paramMap.has_key(

"

cc

"

):

TempAddTo

=

paramMap[

"

to

"

]

+

"

,

"

+

paramMap[

"

cc

"

]

if

TempAddTo.find(

"

,

"

)

!=

-

1

:

FinallyAdd

=

TempAddTo.split(

"

,

"

)

else

:

FinallyAdd

=

TempAddTo

#

stmp 发送邮件. 发现群发地址用‘,’相隔的字符串,只有一个成功,所以改用列表。

smtp.sendmail(paramMap[

"

from

"

], FinallyAdd, msgRoot.as_string())

smtp.quit()

return

True

#

===Test =========================================

if

__name__

==

'

__main__

'

:

from

mailconf

import

mailmap

sendmail(mailmap)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值