Scrapy - Enviando um E-mail
Descrição
O Scrapy pode enviar e-mails usando seu próprio recurso, denominado IO sem bloqueio torcido, que evita o IO sem bloqueio do rastreador. Você pode definir algumas configurações de envio de e-mails e fornecer API simples para envio de anexos.
Existem duas maneiras de instanciar o MailSender, conforme mostrado na tabela a seguir -
Sr. Não | Parâmetros | Método |
---|---|---|
1 | from scrapy.mail import MailSender mailer = MailSender () | Usando um construtor padrão. |
2 | mailer = MailSender.from_settings (configurações) | Usando o objeto Scrapy settings. |
A linha a seguir envia um e-mail sem anexos -
mailer.send(to = ["[email protected]"], subject = "subject data", body = "body data",
cc = ["[email protected]"])
Referência de classe MailSender
A classe MailSender usa IO sem bloqueio Twisted para enviar e-mails de Scrapy.
class scrapy.mail.MailSender(smtphost = None, mailfrom = None, smtpuser = None,
smtppass = None, smtpport = None)
A tabela a seguir mostra os parâmetros usados na classe MailSender -
Sr. Não | Parâmetro e Descrição |
---|---|
1 | smtphost (str) O host SMTP é usado para enviar os emails. Caso contrário, a configuração MAIL_HOST será usada. |
2 | mailfrom (str) O endereço do destinatário é usado para enviar os e-mails. Caso contrário, a configuração MAIL_FROM será usada. |
3 | smtpuser Ele especifica o usuário SMTP. Se não for usado, a configuração MAIL_USER será usada e não haverá validação SMTP se não for mencionada. |
4 | smtppass (str) Ele especifica a passagem SMTP para validação. |
5 | smtpport (int) Ele especifica a porta SMTP para conexão. |
6 | smtptls (boolean) Ele implementa usando o SMTP STARTTLS. |
7 | smtpssl (boolean) Ele administra usando uma conexão SSL segura. |
Os dois métodos a seguir estão na referência de classe MailSender conforme especificado. Primeiro método,
classmethod from_settings(settings)
Ele incorpora usando o objeto Scrapy settings. Ele contém o seguinte parâmetro -
settings (scrapy.settings.Settings object) - É tratado como receptor de e-mail.
Outro método,
send(to, subject, body, cc = None, attachs = (), mimetype = 'text/plain', charset = None)
A tabela a seguir contém os parâmetros do método acima -
Sr. Não | Parâmetro e Descrição |
---|---|
1 | to (list) Refere-se ao destinatário do e-mail. |
2 | subject (str) Ele especifica o assunto do e-mail. |
3 | cc (list) Refere-se à lista de receptores. |
4 | body (str) Refere-se aos dados do corpo do e-mail. |
5 | attachs (iterable) Refere-se ao anexo do e-mail, tipo MIME do anexo e nome do anexo. |
6 | mimetype (str) Ele representa o tipo MIME do e-mail. |
7 | charset (str) Ele especifica a codificação de caracteres usada para o conteúdo do email. |
Configurações de correio
As configurações a seguir garantem que, sem escrever nenhum código, possamos configurar um e-mail usando a classe MailSender no projeto.
Sr. Não | Configurações e descrição | Valor padrão |
---|---|---|
1 | MAIL_FROM Refere-se ao e-mail do remetente para enviar e-mails. |
'scrapy @ localhost' |
2 | MAIL_HOST Refere-se ao host SMTP usado para enviar e-mails. |
'localhost' |
3 | MAIL_PORT Ele especifica a porta SMTP a ser usada para enviar e-mails. |
25 |
4 | MAIL_USER Refere-se à validação SMTP. Não haverá validação, se esta configuração estiver definida como desabilitada. |
Nenhum |
5 | MAIL_PASS Ele fornece a senha usada para validação SMTP. |
Nenhum |
6 | MAIL_TLS Ele fornece o método de atualização de uma conexão insegura para uma conexão segura usando SSL / TLS. |
Falso |
7 | MAIL_SSL Ele implementa a conexão usando uma conexão criptografada SSL. |
Falso |