python 학습(14)python 조작으로 메일 보내기(163메일박스)

9715 단어

1. 163 메일박스 1. 먼저 smtplib 라이브러리를 가져와 메일을 보내고 MIMEText 라이브러리에서 순수한 텍스트를 만드는 메일 모듈 2를 가져와 메일 파라미터를 준비한다.

import smtplib
from email.mime.text import MIMEText

#  
smtpserver = 'smtp.163.com'         #  
port = 0                            #  
sender = '[email protected]'         #  
psw = '*******'                            #  
receiver = "[email protected]"       #  
'''
3、 , html 
4、 
'''
#  
subject = ' '
body = '

' # html msg = MIMEText(body, 'html', 'utf-8') msg['from'] = sender msg['to'] = "[email protected]" msg['subject'] = subject # smtp = smtplib.SMTP() smtp.connect(smtpserver) # smtp.login(sender, psw) # smtp.sendmail(sender, receiver, msg.as_string()) # smtp.quit() #

 
이 가능하다, ~할 수 있다,...

python smtplib.SMTPAuthenticationError: (535, b'Error: authentication failed')


해결 방법: 163 메일박스에서 POP3/SMTP 서비스를 시작합니다. 163 메일은 보내는 비밀번호 대신 클라이언트 권한 수여 코드를 설정하여 입력하면 발송에 성공할 수 있습니다.


2. 첨부된 우편물 발송

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

#  
smtpserver = 'smtp.163.com'         #  
port = 0                            #  
sender = '[email protected]'         #  
psw = '******'                            #  
receiver = "[email protected]"       #  
#  
subjext = 'python '
#  
with open('result.html', "rb") as f:
    body = f.read().decode()
message = MIMEMultipart()
#  
message['from'] = sender
message['to'] = receiver
message['subject'] = subjext
#  
body = MIMEText(body, 'html', 'utf-8')
message.attach(body)
#  
att = MIMEText(open('result.html', 'rb').read(), 'base64', 'utf-8') 
att["Content-Type"] = 'application/octet-stream'
# filename 
att["Content-Disposition"] = 'attachment; filename="result.html"'
message.attach(att)
smtp = smtplib.SMTP()
smtp.connect(smtpserver)    #  
smtp.login(sender, psw)     #  
smtp.sendmail(sender, receiver, message.as_string())  #  
smtp.quit()             #  

3. 여러 수신자 보내기

'''
1. , ? 
2. receiver list , 
3、msg["to"] list , receiver 
'''
# receiver = ["[email protected]", "[email protected]"]
# message['to'] = ";".json(receiver)

 

좋은 웹페이지 즐겨찾기