This is a bulk certificate generator / Mailer package
Project description
CERTIFICATE-GENERATOR / MAILER
This Package mainly focusses on creating bulk Certificates and mailing them to the corresponding respondents
Installation
-
pip install certificate-gen
- This module also uses the library pillow, do not worry, it will be installed automatically
This Version supports only WINDOWS we are working on it to make it available for both linux and mac os
Please don't spam Mails this is mainly created for sending out useful information and making tedious tasks easier
Pre Processes ( For sending Mails )
-
Login to your account on google,
-
[Please enable the less secure apps by clicking here] (https://myaccount.google.com/lesssecureapps)
-
Make sure your CSV file has the name field for rendering certificates / email field for sending emails (if not make sure you add them to your csv)
Usage
Initial steps for sending Mails
from certificate_gen import Mailer
#initialize an object for the Mailer class
mail = Mailer()
mail.username = '' #Your Gmail id / the id from which the mails should be send
mail.password = '' #Your Gmail Password
mail.subject = '' #Subject of the Mail
mail.body = '' #body of the Mail
Make sure you fill out all the above mentioned
0) To generate certificates alone, please follow the steps from 1-2 and you don't need to change any account settings as mentioned in the pre process
1) Reading the file (Make sure you only pass csv files)
- This Function also accepts CSV and EXCEL Files, Feel Free to raise pull requests for issues :)
-
Please pass the read_file method in an if block so we can catch any posisble errors while reading the file
if mail.read_file('filename.csv'):
mail.renderCertificate('certificateTemplate.png')
Possible errors in the read_file method
- At times the encoding of the csv files might not match and you will be prompted for an error pass the encoding format in the read_file method
mail.read_file('filename.csv', encoding_f = 'latin-1')
-
You can also try to pass any encoding formats available for csv_reader available online for PYTHON
1.1) You can also read only the mails and names by passing an optional argument to the read_file method
- This will only red the Emails in the CSV file
if mail.read_file('filename.csv', getNames=False ,encoding_f='latin-1'):
- This will only read the Names in the CSV file
if mail.read_file('filename.csv', getEmails=False ,encoding_f='latin-1'):
-
By default everything will be read
2) Rendering the Certificates
- **Pre Processes **
- Make sure Your certificate template is present in the root directory of the program / or mention a complete path to it, and The Csv file also has the name field and you have read it from the csv file using read_file
-
The Type of the certificate template should be a '.png' format for better results
-
Usage
Now if you are Probably working with VS-code it would be more efficientif mail.read_file('filename.csv'): mail.renderCertificate('certificateTemplate.png')
- open the folder name that will created on the root directory of the project only One image will be rendered for sample purpose
- As the Terminal will promt you for the position of the text in the certificate Template
- Make sure You experiment with your values and the the font-size,
- Once satisfied press (1) when prompted to create the certificates for all the names in the CSV file
3) Now if you have a email section in your csv file and wish to send mails, make sure you comeplete the Initial Steps
- Right after that Call the send_certificate_mail() method in the mail object
-
if mail.read_file('filename.csv'): mail.renderCertificate('certificateTemplate.png') mail.send_certificate_mail()
3.1) Possible Errors:
- Please enter your mailId and password correctly,
- And also follow the PreProcesses
- You will have a Mailing limit, and if the process quit with limit exceeded error, please wait for 24 hours and re run the program, ( and make sure you have deleted the previous entries, you will be prompted about the entries sent in the terminal you can refer there)
4) Sending out single Mails:
from certificate_gen import Mailer
mail = Mailer()
mail.username = '' # Username
mail.password = '' # Password
mail.subject = '' # subject
mail.body = '''Body of the Mail'''
mail.attachment_path = 'sample_pic.png' # You can add attachments if you want to
mail.emails.append('') # For sending simple mails, just append the elements or simply target the object to a list of Email ids,
mail.send_mail_with_attachment() #If you have added attachments Please use this,
mail.send_mail() #Else this can be used to send single Mails
4.1) Sending multiple Mails:
from certificate_gen import Mailer
mail = Mailer()
mail.username = '' # Username
mail.password = '' # Password
mail.subject = '' # subject
mail.body = '''Body of the Mail'''
if mail.read_file('csv file path'):
mail.send_mail
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
certificate_gen-0.2.tar.gz
(6.5 kB
view details)
Built Distribution
File details
Details for the file certificate_gen-0.2.tar.gz
.
File metadata
- Download URL: certificate_gen-0.2.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f901296dde9dac6108be95c23678fabe726d8cd05d0d68746f9c733a70d7f1d3 |
|
MD5 | 9a26dffae654e43a9de5576044faa1bf |
|
BLAKE2b-256 | 131057d6aeb83606ac53c6650b40fd29286bca7be52d7930fa7fae2acd00d8d0 |
Provenance
File details
Details for the file certificate_gen-0.2-py3-none-any.whl
.
File metadata
- Download URL: certificate_gen-0.2-py3-none-any.whl
- Upload date:
- Size: 7.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c95c6d47f05228d8e6689841b08078c6db7fbb330ae6ffac15a7785763b98235 |
|
MD5 | 8a12892936ba30e60f83e10e32aafa63 |
|
BLAKE2b-256 | 07ff4340ffe2ba088ab5453c319b27b1cdb36e716be0f91302bee3229814f8f5 |