Python отправляет анонимную почту с моего компьютера с созданного локального сервера - PullRequest
0 голосов
/ 31 декабря 2018

Я пытаюсь выяснить, как использовать smtplib и smtpd для отправки анонимной электронной почты с моего компьютера.Я думал, что сделаю что-то подобное:

local client -> local server -> destination server -> receiver

Мой код:

import smtplib
from smtpd import SMTPServer
import email.utils
from email.mime.text import MIMEText
from asyncore import loop


class CustomSMTPServer(SMTPServer):
    def process_message(self, peer, mailfrom, rcpttos, data):
        print('Receiving message from:', peer)
        print('Message addressed from:', mailfrom)
        print('Message addressed to  :', rcpttos)
        print('Message length        :', len(data))
        return


class SendEmail:
    def __init__(self):
        self.server = None

        self.run_server()
        self.send_message()
        loop()

    def run_server(self):
        self.server = CustomSMTPServer(('localhost', 1025), None)
        print('Running server...')

    def send_message(self):
        print('Sending message...')

        msg = MIMEText('This is the body')
        msg['To'] = email.utils.formataddr(('Recipient', 'destination@mail.com'))
        msg['From'] = email.utils.formataddr(('Author', 'author@mail.com'))
        msg['Subject'] = 'Simple test message'

        client = smtplib.SMTP('localhost')

        try:
            client.sendmail('author@mail.com', ['destination@mail.com'], msg.as_string())
            print('Sent...')
        finally:
            print('Failed...')
            client.quit()

SendEmail()

У меня ConnectionRefusedError: [Errno 111] Connection refused

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...