Scrapy可以使用自己的工具发送电子邮件,称为扭曲的非阻塞IO ,远离爬虫的非阻塞IO.您可以配置几个发送电子邮件的设置,并提供简单的API来发送附件.
有两种方法可以实例化MailSender,如下表所示 :
来自scrapy的
Sr.No | 参数 | 方法 |
---|---|---|
1 | mail import MailSender mailer = MailSender() | 使用标准构造函数. |
2 | mailer = MailSender.from_settings(设置) | 使用Scrapy设置对象. |
以下行发送没有at的电子邮件tachments :
mailer.send(to = ["receiver@example.com"], subject = "subject data", body = "body data", cc = ["list@example.com"])
MailSender类使用 Twisted non-blocking IO 发送电子邮件来自Scrapy.
class scrapy.mail.MailSender(smtphost = None, mailfrom = None, smtpuser = None, smtppass = None, smtpport = None)
下表显示了 MailSender 类中使用的参数 :
Sr.No | 参数&说明 |
---|---|
1 | smtphost(str) SMTP主机用于发送电子邮件.如果没有,则将使用 MAIL_HOST 设置. |
2 | mailfrom(str) 接收方的地址用于发送电子邮件.如果没有,则将使用 MAIL_FROM 设置. |
3 | smtpuser 它指定了SMTP用户.如果未使用,则将使用 MAIL_USER 设置,如果未提及则不会进行SMTP验证. |
4 | smtppass(str) 它指定用于验证的SMTP通行证. |
5 | smtpport(int) 它指定用于连接的SMTP端口. |
6 | smtptls(boolean) 它实现了使用SMTP STARTTLS. |
7 | smtpssl(布尔值) 它使用安全的SSL连接进行管理. |
以下两种方法是指定的MailSender类引用.第一种方法,
classmethod from_settings(settings)
它包含了使用Scrapy设置对象.它包含以下参数 :
设置(scrapy.settings.Settings对象) : 它被视为电子邮件接收者.
另一种方法,
send(to,subject, body,cc = None,attachs =(),mimetype ='text/plain',charset = None)
下表包含上述参数方法 :
Sr.No | 参数&说明 |
---|---|
1 | to (list) 它指的是电子邮件接收者. |
2 | subject(str) 它指定电子邮件的主题. |
3 | cc(list) 它指的是接收者列表. |
4 | body(str) 它指的是电子邮件正文数据. |
5 | attachs (iterable) 它指的是电子邮件的附件,附件和名称的mimetype附件. |
6 | mimetype(str) 它代表电子邮件的MIME类型. |
7 | charset(str) 具体而言用于电子邮件内容的字符编码. |
以下设置确保在不编写任何代码的情况下,我们可以使用项目中的MailSender类配置电子邮件.
Sr.No | 设置&说明 | 默认值 |
---|---|---|
1 | MAIL_FROM 它指的是发送电子邮件的发件人电子邮件. | 'scrapy @ localhost' |
2 | MAIL_HOST 它指的是用于发送的SMTP主机电子邮件. | 'localhost' |
3 | MAIL_PORT 它指定SMTP端口为用于发送电子邮件. | 25 |
4 | MAIL_USER 它指的是SMTP验证.如果此设置设置为禁用,则不会进行验证. | 无 |
5 | MAIL_PASS 它提供用于SMTP验证的密码. | 无 |
6 | MAIL_TLS 它提供了使用SSL/TLS将不安全连接升级到安全连接的方法. | False |
7 | MAIL_SSL 它使用SSL加密连接实现连接. | False |