Writing a simple SMTP server
In this recipe, we will learn how to build an SMTP server and a client, as a simple mail server and a client. We will use Python's smtpd
library for this recipe. You may read more about smtpd at https://docs.python.org/3/library/smtpd.html.
Getting ready
First, we will write an SMTP server that listens on a particular host and a particular port. Then we will write an SMTP client that connects to the same host and port, with the fromaddress
, toaddress
, subject
, and message passed as the other arguments.
How to do it...
The server receives the messages from the clients and logs them to the console.
Listing 5.9a gives the code for the SMTP server as follows:
#!/usr/bin/env python # Python Network Programming Cookbook, Second Edition -- Chapter - 5 # This program is optimized for Python 2.7.12 and Python 3.5.2. # It may run on any other version with/without modifications. import smtplib import email.utils import argparse from email.mime.text import MIMEText ...