Como posso enviar o conteúdo HTML em um email usando Python? Eu posso enviar texto simples.
python
email
html-email
Peter Mortensen
fonte
fonte
Respostas:
Da documentação do Python v2.7.14 - 18.1.11. email: Exemplos :
fonte
quit
os
objeto. E se eu quiser enviar várias mensagens? Devo sair sempre que enviar a mensagem ou todas (em um loop for) e sair de uma vez por todas?# According to RFC 2046, the last part of a multipart message, in this case # the HTML message, is best and preferred.
Gostaria de ler isso 2hrs agoVocê pode tentar usar o meu módulo de mala direta .
fonte
use_tls=True
,usr='email'
epwd='password'
ao inicializarMailer
e funcionará.message.Body = """Some text to show when the client cannot show HTML emails"""
Aqui está uma implementação do Gmail da resposta aceita:
fonte
Aqui está uma maneira simples de enviar um email em HTML, apenas especificando o cabeçalho Content-Type como 'text / html':
fonte
smtplib.SMTP()
exemplo simples , que não usa tls. Eu usei isso para um script interno no trabalho, onde usamos o ssmtp e um mailhub local. Além disso, este exemplo está ausentes.quit()
.Aqui está o código de exemplo. Isso é inspirado no código encontrado no site do Python Cookbook (não é possível encontrar o link exato)
fonte
para python3, melhore a resposta de @taltman :
email.message.EmailMessage
vez deemail.message.Message
construir email.email.set_content
func, atribuasubtype='html'
argumento. em vez da função de baixo nívelset_payload
e adicione o cabeçalho manualmente.SMTP.send_message
func em vez deSMTP.sendmail
func para enviar email.with
bloco para fechar automaticamente a conexão.fonte
Na verdade, o yagmail adotou uma abordagem um pouco diferente.
Por padrão, ele envia HTML, com fallback automático para leitores de e-mail incapazes. Não é mais o século XVII.
Obviamente, ele pode ser substituído, mas aqui vai:
Para obter instruções de instalação e muitos outros recursos excelentes, dê uma olhada no github .
fonte
Aqui está um exemplo prático para enviar e-mails em texto sem formatação e HTML do Python usando
smtplib
junto com as opções CC e BCC.https://varunver.wordpress.com/2017/01/26/python-smtplib-send-plaintext-and-html-emails/
fonte
Aqui está minha resposta para a AWS usando o boto3
fonte
Solução mais simples para enviar email da conta Organizacional no Office 365:
fonte