Connect to SMTP Servers using Python

Simple Mail Transfer Protocol (SMTP) is the most commonly used email protocol that deals with sending email messages from client applications to the email server. In various cases, the email clients are implemented within Python applications to send emails via SMTP. For such scenarios, this article covers how to connect to an SMTP server using Python. Furthermore, it demonstrates how to send an email via SMTP.

Python Library to Connect SMTP Server

Aspose.Email for Python via .NET is a Python library to create, send and manipulate emails. It allows you to implement your own email clients in Python seamlessly. We will use this library to connect to SMTP servers. You can install the library from PyPI using the following command.

pip install Aspose.Email-for-Python-via-NET

Or, you can follow the below steps for manual installation.

  • Download the installable .whl file from the downloads section.
  • From the command line, use command: pip install «FileName».whl to install the API.
  • Download a complete package of source code samples from GitHub.

Connect to an SMTP Server in Python

Before connecting to an SMTP server, you need to have the following things known.

  • Username
  • Password
  • Port

Once you have them, you can configure the SMTP client using the following steps.

  • First, create an object of SmtpClient class.
  • Then, set host, username, password, and port number using, SmtpClient.username, SmtpClient.password, and SmtpClient.port properties, respectively.
  • Set security options using SmtpClient.security_options property.
  • Finally, proceed to access mailbox using SmtpClient object.

The following code sample shows how to establish a connection with the SMTP server in Python.

Send Emails via SMTP in Python

After establishing the connection to SMTP server, you can send emails. The following code sample shows how to send an email via SMTP in Python.

Get a Free API License

You can use Aspose.Email for Python via .NET for free by getting a temporary license.


In this article, you have learned how to connect to an SMTP server using Python. Also, you have seen how to send an email via SMTP in Python. You can visit documentation to explore more about Aspose.Email for Python via .NET. In case you would have any questions or queries, feel free to let us know via our forum.

See Also