Scrapy - Senden einer E-Mail

Beschreibung

Scrapy kann E-Mails über seine eigene Funktion senden, die als Twisted Non-Blocking IO bezeichnet wird und sich von nicht blockierenden IO des Crawlers fernhält. Sie können die wenigen Einstellungen für das Senden von E-Mails konfigurieren und eine einfache API zum Senden von Anhängen bereitstellen.

Es gibt zwei Möglichkeiten, den MailSender zu instanziieren, wie in der folgenden Tabelle gezeigt:

Sr.Nr. Parameter Methode
1 aus Scrapy.mail importieren MailSender mailer = MailSender () Mit einem Standardkonstruktor.
2 mailer = MailSender.from_settings (Einstellungen) Durch Verwendung des Scrapy-Einstellungsobjekts.

Die folgende Zeile sendet eine E-Mail ohne Anhänge -

mailer.send(to = ["[email protected]"], subject = "subject data", body = "body data", 
   cc = ["[email protected]"])

MailSender-Klassenreferenz

Die MailSender-Klasse verwendet Twisted Non-Blocking IO zum Senden von E-Mails von Scrapy.

class scrapy.mail.MailSender(smtphost = None, mailfrom = None, smtpuser = None, 
   smtppass = None, smtpport = None)

Die folgende Tabelle zeigt die in der MailSender- Klasse verwendeten Parameter -

Sr.Nr. Parameter & Beschreibung
1

smtphost (str)

Der SMTP-Host wird zum Senden der E-Mails verwendet. Wenn nicht, wird die Einstellung MAIL_HOST verwendet.

2

mailfrom (str)

Die Adresse des Empfängers wird zum Senden der E-Mails verwendet. Wenn nicht, wird die Einstellung MAIL_FROM verwendet.

3

smtpuser

Es gibt den SMTP-Benutzer an. Wenn es nicht verwendet wird, wird die Einstellung MAIL_USER verwendet und es findet keine SMTP-Validierung statt, wenn dies nicht erwähnt wird.

4

smtppass (str)

Es gibt den SMTP-Pass für die Validierung an.

5

smtpport (int)

Es gibt den SMTP-Port für die Verbindung an.

6

smtptls (boolean)

Es implementiert die Verwendung von SMTP STARTTLS.

7

smtpssl (boolean)

Es wird über eine sichere SSL-Verbindung verwaltet.

Die folgenden zwei Methoden sind in der angegebenen MailSender-Klassenreferenz enthalten. Erste Methode,

classmethod from_settings(settings)

Es wird mithilfe des Scrapy-Einstellungsobjekts integriert. Es enthält den folgenden Parameter -

settings (scrapy.settings.Settings object) - Es wird als E-Mail-Empfänger behandelt.

Eine andere Methode,

send(to, subject, body, cc = None, attachs = (), mimetype = 'text/plain', charset = None)

Die folgende Tabelle enthält die Parameter der obigen Methode -

Sr.Nr. Parameter & Beschreibung
1

to (list)

Es bezieht sich auf den E-Mail-Empfänger.

2

subject (str)

Es gibt den Betreff der E-Mail an.

3

cc (list)

Es bezieht sich auf die Liste der Empfänger.

4

body (str)

Es bezieht sich auf E-Mail-Körperdaten.

5

attachs (iterable)

Es bezieht sich auf den Anhang der E-Mail, den Mimetyp des Anhangs und den Namen des Anhangs.

6

mimetype (str)

Es repräsentiert den MIME-Typ der E-Mail.

7

charset (str)

Es gibt die Zeichenkodierung an, die für E-Mail-Inhalte verwendet wird.

Mail-Einstellungen

Die folgenden Einstellungen stellen sicher, dass wir ohne Schreiben von Code eine E-Mail mithilfe der MailSender-Klasse im Projekt konfigurieren können.

Sr.Nr. Einstellungen & Beschreibung Standardwert
1

MAIL_FROM

Es bezieht sich auf Absender-E-Mails zum Senden von E-Mails.

'Scrapy @ Localhost'
2

MAIL_HOST

Es bezieht sich auf den SMTP-Host, der zum Senden von E-Mails verwendet wird.

'localhost'
3

MAIL_PORT

Es gibt den SMTP-Port an, der zum Senden von E-Mails verwendet werden soll.

25
4

MAIL_USER

Es bezieht sich auf die SMTP-Validierung. Es erfolgt keine Validierung, wenn diese Einstellung deaktiviert ist.

Keiner
5

MAIL_PASS

Es enthält das Kennwort für die SMTP-Validierung.

Keiner
6

MAIL_TLS

Es bietet die Möglichkeit, eine unsichere Verbindung mithilfe von SSL / TLS auf eine sichere Verbindung zu aktualisieren.

Falsch
7

MAIL_SSL

Es implementiert die Verbindung über eine SSL-verschlüsselte Verbindung.

Falsch