Heim  >  Artikel  >  Backend-Entwicklung  >  Wie konfiguriere ich das E-Mail-Versandprotokoll in Python?

Wie konfiguriere ich das E-Mail-Versandprotokoll in Python?

PHPz
PHPznach vorne
2023-04-26 17:28:081681Durchsuche

Wie konfiguriere ich das E-Mail-Versandprotokoll in Python?

Jemand hat vor ein paar Tagen in der Gruppe gefragt und etwas über das Python-Konfigurations-E-Mail-Versandprotokoll gesagt. Ich halte es für recht sachkundig, daher werde ich es hier aufzeichnen, um in Zukunft Fallstricke zu vermeiden.

  • Wir können die Methode logging.handlers.SMTPHandler von Python verwenden, um Protokolle an das angegebene Postfach zu senden. Früher habe ich 163 Mailbox-Konfigurationsparameter verwendet und kann sie bedenkenlos verwenden, aber wenn ich das Firmenpostfach von QQ verwende, erhalte ich immer eine Fehlermeldung und es wird immer angezeigt, dass die Anmeldung abgelaufen ist.

Wie konfiguriere ich das E-Mail-Versandprotokoll in Python?

Schließlich habe ich den Grund gefunden, indem ich den Quellcode der Protokollierung gelesen habe. Sowohl das QQ-Geschäftspostfach als auch Gmail verwenden standardmäßig eine SSL-Verbindung.

Wie konfiguriere ich das E-Mail-Versandprotokoll in Python?

  • Abschließend noch eine einfache Konfiguration
# logging.conf完整配置
[loggers]
keys=root,test
[handlers]
keys=consoleHandler,fileHandler,testHandler
[formatters]
keys=simpleFormatter
[formatter_simpleFormatter]
format=%(asctime)s - %(name)s - %(levelname)s - %(message)s - [%(filename)s:%(lineno)s]
datefmt=
[logger_root]
level=INFO
handlers=consoleHandler,fileHandler
[logger_test]
level=INFO
handlers=testHandler
qualname=test
propagate=0
[handler_consoleHandler]
class=StreamHandler
level=INFO
formatter=simpleFormatter
args=(sys.stdout,)
[handler_fileHandler]
class=FileHandler
level=INFO
formatter=simpleFormatter
args=('log/spider_db.log', 'a')
[handler_testHandler]
class=handlers.SMTPHandler
level=INFO
formatter=simpleFormatter
args=(('smtp.163.com',25), 'username@163.com', ['somebody01@example.com','somebody02@example.com'], 'Test SMTPHandler', ('username', 'password'))
python
# 邮件测试例子
import logging
import logging.config
logging.config.fileConfig("logging.conf")
logger = logging.getLogger('test')
logger.info('hello body ~')


Das obige ist der detaillierte Inhalt vonWie konfiguriere ich das E-Mail-Versandprotokoll in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen