Scrapy - Invio di un'e-mail

Descrizione

Scrapy può inviare e-mail utilizzando la propria funzione chiamata Twisted non-blocking IO che tiene lontano dall'IO non bloccante del crawler. È possibile configurare le poche impostazioni di invio di e-mail e fornire semplici API per l'invio di allegati.

Esistono due modi per creare un'istanza di MailSender come mostrato nella tabella seguente:

Suor n Parametri Metodo
1 da scrapy.mail importa MailSender mailer = MailSender () Utilizzando un costruttore standard.
2 mailer = MailSender.from_settings (impostazioni) Utilizzando l'oggetto impostazioni Scrapy.

La riga seguente invia un'e-mail senza allegati -

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

Riferimento alla classe MailSender

La classe MailSender utilizza IO non bloccante Twisted per l'invio di e-mail da Scrapy.

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

La tabella seguente mostra i parametri utilizzati nella classe MailSender -

Suor n Parametro e descrizione
1

smtphost (str)

L'host SMTP viene utilizzato per inviare le e-mail. In caso contrario, verrà utilizzata l'impostazione MAIL_HOST .

2

mailfrom (str)

L'indirizzo del destinatario viene utilizzato per inviare le e-mail. In caso contrario, verrà utilizzata l'impostazione MAIL_FROM .

3

smtpuser

Specifica l'utente SMTP. Se non viene utilizzata, verrà utilizzata l'impostazione MAIL_USER e non ci sarà convalida SMTP se non viene menzionata.

4

smtppass (str)

Specifica il passaggio SMTP per la convalida.

5

smtpport (int)

Specifica la porta SMTP per la connessione.

6

smtptls (boolean)

Si implementa utilizzando SMTP STARTTLS.

7

smtpssl (boolean)

Si gestisce utilizzando una connessione SSL sicura.

I seguenti due metodi sono presenti nel riferimento alla classe MailSender come specificato. Primo metodo,

classmethod from_settings(settings)

Incorpora utilizzando l'oggetto Impostazioni Scrapy. Contiene il seguente parametro:

settings (scrapy.settings.Settings object) - Viene considerato come un destinatario di posta elettronica.

Un altro metodo,

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

La tabella seguente contiene i parametri del metodo precedente:

Suor n Parametro e descrizione
1

to (list)

Si riferisce al destinatario dell'e-mail.

2

subject (str)

Specifica l'oggetto dell'email.

3

cc (list)

Si riferisce all'elenco dei ricevitori.

4

body (str)

Si riferisce ai dati del corpo dell'email.

5

attachs (iterable)

Si riferisce all'allegato dell'e-mail, al tipo MIME dell'allegato e al nome dell'allegato.

6

mimetype (str)

Rappresenta il tipo MIME dell'e-mail.

7

charset (str)

Specifica la codifica dei caratteri utilizzata per i contenuti delle e-mail.

Impostazioni della posta

Le seguenti impostazioni assicurano che senza scrivere alcun codice, possiamo configurare un'e-mail utilizzando la classe MailSender nel progetto.

Suor n Impostazioni e descrizione Valore predefinito
1

MAIL_FROM

Si riferisce all'e-mail del mittente per l'invio di e-mail.

"scrapy @ localhost"
2

MAIL_HOST

Si riferisce all'host SMTP utilizzato per l'invio di e-mail.

"localhost"
3

MAIL_PORT

Specifica la porta SMTP da utilizzare per l'invio di e-mail.

25
4

MAIL_USER

Si riferisce alla convalida SMTP. Non ci sarà alcuna convalida, se questa impostazione è disabilitata.

Nessuna
5

MAIL_PASS

Fornisce la password utilizzata per la convalida SMTP.

Nessuna
6

MAIL_TLS

Fornisce il metodo per aggiornare una connessione non sicura a una connessione protetta utilizzando SSL / TLS.

Falso
7

MAIL_SSL

Implementa la connessione utilizzando una connessione crittografata SSL.

Falso