Skip to main content

An extension of standard smtplib, which supports proxy tunneling

Project description

An extension of standard smtplib, which supports proxy tunneling.

Package works on Python 2.7+ and Python 3.5+.

Using PySocks.

Installation

You can install xsmtplib from PyPI by running:

pip install xsmtplib

Or you can just download tarball / clone the repository and run:

python setup.py install

Alternatively, include just xsmtplib.py in your project.

Usage

xsmtplib extends standard python smtplib, so it can be used instead without any compatibility issues.

Connection to SMTP server via proxy can be done during instance initialization:

from xsmtplib import SMTP

server = SMTP(host="smtp.example.com", proxy_host="proxy.example.com")
server.sendmail("user@example.com", "admin@example.com", "I have an issue. Please help!")
server.quit()

Alternatively, you can connect to SMTP server manually when you need to:

from xsmtplib import SMTP

server = SMTP(timeout=30)
server.set_debuglevel(1)
server.connect_proxy(proxy_host="proxy.example.com", host="smtp.example.com")
server.helo("user@example.com")
server.sendmail("user@example.com", "admin@example.com", "I have an issue. Please help!")
s.quit()

Known issues

SMTPS (SSL SMTP) and LMTP connections via proxy are not supported yet.

License

See LICENSE file for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xsmtplib-1.0.1.dev0.tar.gz (16.7 kB view details)

Uploaded Source

File details

Details for the file xsmtplib-1.0.1.dev0.tar.gz.

File metadata

  • Download URL: xsmtplib-1.0.1.dev0.tar.gz
  • Upload date:
  • Size: 16.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.5

File hashes

Hashes for xsmtplib-1.0.1.dev0.tar.gz
Algorithm Hash digest
SHA256 3028e52063429e13cc652d66e8f9f99588055ca86c4b78e4a7fe722d7aa86cd2
MD5 a6293edae7743a0244e94c2083aba76f
BLAKE2b-256 34bcd403c94683cec306ddcff1dda2a62daad2d306aea20d6f578436519fe034

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page