Skip to main content

An email sending utility for python

Project description

firemail

firemail is a simple Python module for sending emails using the SMTP protocol. It allows you to send plain text or HTML emails and optionally attach files. The module is designed to work with Gmail by default but can be configured for other SMTP servers as well.

Installation

To use firemail, you can install it via pip:

pip install firemail

Usage

import os
from firebmail import sendmail


# Example usage
sender = "yourmail@example.com"
password = "your_app_password"
payload = "Hello, this is a test email!"
recipient = "recipient_email@example.com"
subject = "Test Email"

sendmail(payload, recipient, sender,password, subject)

Function Parameters

The sendmail function has the following parameters:

payload: The string containing the message, either in plain text or HTML format. recipient: The email address of the recipient. sender: Your email address password: Your app password subject: The email subject (default is "Message from firemail"). type_: The type of payload, either 'plain' or 'html' (default is 'plain'). filepath: The path of the email attachment, default is None. client: The name of the client (default is 'smtp.gmail.com'). Attempts to use unrelated mail services may result in failure

Example with attachment

import os
from firebmail.firebmail import sendmail



# Example usage with attachment
sender = "yourmail@example.com"
password = "your_app_password"
payload = "Hello, this email includes an attachment."
recipient = "recipient_email@example.com"
subject = "Email with Attachment"
filepath = "path/to/your/file.pdf"

sendmail(payload, recipient,sender, password, subject, filepath=filepath)

Sending Batch Mail

Using the sendmail function in a loop to send multiple emails can be inefficient, because it authenticates each time; instead use the BatchMail class to send multiple emails efficiently.

from firebmail import BatchMail

sender = "mymail@example.com"
password = "my app password"

payload = "Hello, this is a test email!"
subject = "Test Email"

batch = BatchMail(sender = sender, password = password, subject=subject, payload=payload)
batch.send_batch(['test1@gmail.com', 'test2@gmail.com', 'test3@gmail.com'])

Note

Make sure to use this module responsibly and adhere to the email sending policies of your email service provider. Additionally, consider using application-specific passwords for enhanced security.

For Gmail users, you can generate an app password by following the instructions here.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Contributing

Pull requests are welcome. For major changes, please open an issdriveue first to discuss what you would like to change.

Issues

If you encounter any issues, feel free to open an issue in the repository.

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

firebmail-0.1.6.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

firebmail-0.1.6-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file firebmail-0.1.6.tar.gz.

File metadata

  • Download URL: firebmail-0.1.6.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for firebmail-0.1.6.tar.gz
Algorithm Hash digest
SHA256 b1c5fa7ced2e4d18f1c689e37deb88ff94958c27cb71df5f7be8cb77e4bb2467
MD5 8041a6bd3fa7b3b81443e76e91bf1eec
BLAKE2b-256 61f9fef49319a8f18e9e15eddfbea9097236667094399cc5b46639917b6b77fe

See more details on using hashes here.

File details

Details for the file firebmail-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: firebmail-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for firebmail-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 9db3d3bbc74e7d6348c192723e845e6fa1a516f63fe5604fb044a07d3b0e3517
MD5 3cd0c08ef5006c816fa3828e487d9225
BLAKE2b-256 6888f3a5a0386028f6730d8bc582d2765d38ed77ea17cc2bdd7e723b127cf09e

See more details on using hashes here.

Supported by

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