Python usa caixa de correio QQ para enviar e-mail automaticamente

Recentemente, usando Python para enviar e-mails automaticamente, existem três etapas principais: fazer login no e-mail, escrever o conteúdo do e-mail e enviar. As bibliotecas usadas são smtplib e e-mail. Você pode instalá-lo diretamente com o pip

Estou usando a caixa de correio QQ, primeiro preciso configurar o serviço POP3 / SMTP da caixa de correio QQ

v2-bf5f637bb0a441f0ce54990c9db241b1_720w.png


v2-204c894b7307e1c2e66d7cae772f5d9a_720w.png


v2-91a264f1c992d838b3b02bbea2413401_720w.png


Lembre-se deste código de autorização, este código de autorização é a senha para fazer login na caixa de correio no script Python, não a senha que você costuma fazer login na caixa de correio

1. Envie uma mensagem de texto comum


#Enviar vários tipos de e-mail de email.mime.multipart import MIMEMultipart 
  
msg_from = '[email protected]' # sender's mailbox 
passwd = 'xxx 
  
' #é o código de autorização acima para = ['[email protected]'] 
#Receiver mailbox 
  
#set mail content # MIMEMultipart class pode colocar qualquer conteúdo 
msg = MIMEMultipart () 
conntent = "isto é uma string" 
#add 
o conteúdo msg.attach (MIMEText (conntent, 'plain', 'utf-8' )) 
#Defina o 
  
assunto do e-mail 
msg ['Assunto'] = "Este é o assunto do e-mail" #Sender 
  
information msg ['From'] = msg_from #Iniciar o 
  
envio 
  
# Send via SSL, endereço do servidor e porta 
s = smtplib.SMTP_SSL ( "smtp.qq.com", 465) 
# 
Caixa postal de login s.login (msg_from, passwd) 
#Comece a 
enviar s.sendmail (msg_from, para, msg.as_string ()) 
print ("Correio enviado com sucesso ")


v2-4e8c8794c77ad70dff1d53ee7f4ece46_720w.png


2. Envie e-mails com anexos

import smtplib 
from email.mime.text import MIMEText #Enviar 
vários tipos de emails 
de email.mime.multipart import MIMEMultipart 
  
msg_from = '[email protected]' # e-mail do remetente 
passwd = 'xxxxx' 
  
to = ['1508691067 @ qq .com '] 
#receiver mailbox 
  
#set mail content # MIMEMultipart class pode colocar qualquer conteúdo 
msg = MIMEMultipart () 
conntent = "isto é uma string" 
#add 
the content msg.attach (MIMEText (conntent,' plain ',' utf-8 ')) 
#Add 
  
attachment att1 = MIMEText (open (' result.xlsx ',' rb '). read (),' base64 ',' utf-8 ') 
#Open attachment att1 [' Content-Type ' ] = 'application / octet-stream' 
#Setting type is streaming media format att1 ['Content-Disposition'] = 'attachment; filename = result.xlsx' #Setting description information 
  
msg.anexar (att1) #Junte-se ao e-mail 
  
#Defina o assunto do e-mail 
msg ['Assunto'] = "Este é o assunto do e-mail"
  
#Sender 
information msg ['De'] = msg_from #Iniciar o 
  
envio 
  
# Enviar via SSL, endereço do servidor e porta 
s = smtplib.SMTP_SSL ("smtp.qq.com", 465) 
# 
Caixa postal de login s.login (msg_from, passwd) 
#Comece a 
enviar s.sendmail (msg_from, para, msg.as_string ()) 
print ("Correio enviado com sucesso")


v2-e79661c4e1bafc2c9002625ea46fde2b_720w.png


3. Envie anexos com fotos

Da mesma forma, você pode usar o método acima ou enviar uma imagem anexada

import smtplib 
from email.mime.text import MIMEText #Send 
vários tipos de emails 
de email.mime.multipart import MIMEMultipart 
  
msg_from = '[email protected]' # e-mail do remetente 
passwd = 'xxxxx' 
  
to = ['1508691067 @ qq .com '] 
#receiver mailbox 
  
#set mail content # MIMEMultipart class pode colocar qualquer conteúdo 
msg = MIMEMultipart () 
conntent = "isto é uma string" 
#add 
the content msg.attach (MIMEText (conntent,' plain ',' utf-8 ')) 
#Add 
  
attachment att1 = MIMEText (open (' result.xlsx ',' rb '). read (),' base64 ',' utf-8 ') 
#Open attachment att1 [' Content-Type ' ] = 'application / octet-stream' 
#Set type é o formato de streaming media att1 ['Content-Disposition'] = 'attach; filename = result.xlsx'
  
#Set description information att2 = MIMEText (open ('1.jpg', 'rb'). Read (), 'base64', 'utf-8')
att2 ['Content-Type'] = 'application / octet-stream' 
#Defina o tipo para o formato de streaming media att2 ['Content-Disposition'] = 'attachment; filename = 1.jpg' 
  
#Defina as informações de descrição msg.attach (att1 ) 
#Adicione ao e-mail msg.attach (att2) #Defina o 
  
assunto do e- mail 
msg ['Assunto'] = "Este é o assunto do e-mail" 
#Sender 
  
information msg ['De'] = msg_from #Iniciar o 
  
envio 
  
# Enviar via SSL, Endereço e porta do servidor 
s = smtplib.SMTP_SSL ("smtp.qq.com", 465) 
# 
Caixa de correio de login s.login (msg_from, passwd) 
#Iniciar o 
envio de s.sendmail (msg_from, para, msg.as_string ()) 
print ( "Correio enviado com sucesso")



v2-efe895bfc9a46d13838454ccad16f4cc_720w.png


4. Envie e-mail em formato html

import smtplib 
from email.mime.text import MIMEText #Send 
vários tipos de emails 
de email.mime.multipart import MIMEMultipart 
import datetime 
msg_from = '[email protected]' # e-mail do remetente 
passwd = 'xxxxxx' 
  
to = ['1508691067 @ qq.com '] #
受 方 邮 #Defina o 
  
conteúdo do e- mail # A classe MIMEMultipart pode colocar qualquer conteúdo 
msg = MIMEMultipart () 
# conntent = "Isto é uma string" 
# #put o 
conteúdo em # msg.attach (MIMEText (conntent, 'simples', 'utf-8')) 
#Adicionar 
  
anexo att1 = MIMEText (open ('result.xlsx', 'rb'). read (), 'base64', 'utf-8') 
#Abrir anexo att1 [ 'Content-Type'] = 'application / octet-stream' 
#Defina o tipo como o formato de streaming media att1 ['Content-Disposition'] = 'anexo; nome do arquivo = resultado.xlsx '#Set description information
  xlsx ' 
#Set description information att2 = MIMEText (open (' 1.jpg ',' rb '). read (),' base64 ',' utf-8 ')
          <blockquote><p> <strong> O conteúdo a seguir é a ata desta reunião, verifique! </strong></p> </blockquote>
  
  
  
           
          <blockquote><p> <strong> Orador: {fayanren} </strong> </p> </blockquote> 
          <blockquote><p> <strong> Moderador: {zhuchiren} </strong> </p> </blockquote> 
          <p align = "right"> {mytime} </p> 
        <body> 
        <html> 
        '' '.format (fayanren = fayanren, zhuchiren = zhuchiren, mytime = mytime) 
  
msg.attach (MIMEText (content , 'html', 'utf-8')) 
#Defina o 
  
assunto do e- mail 
msg ['Assunto'] = "Este é o assunto do e-mail" #Sender 
  
information msg ['De'] = msg_from #Iniciar o 
  
envio 
  
# Enviar via SSL, Endereço do servidor e porta 
s = smtplib.SMTP_SSL ("smtp.qq.com", 465) 
# 
Caixa de correio de login s.login (msg_from,passwd) 
#Comece a 
enviar s.sendmail (msg_from, para, msg.as_string ()) 
print ("Correio enviado com sucesso")



v2-1026dd6fa77c268bfd0c59c0041509d3_720w.png


O texto acima é todo o conteúdo deste artigo, espero que seja útil para o estudo de todos e espero que você possa apoiá-lo.


Acho que você gosta

Origin blog.51cto.com/14825302/2544811
Recomendado
Clasificación