Coding For Bulk Email Sender
Coding For Bulk Email Sender
import smtplib
import ssl
import os
import json
import sys
import pandas as pd
BASE_DIR = os.path.dirname(__file__)
# print(BASE_DIR)
def join_dirs(loc):
list_loc = join_dirs('output_cleaned.xlsx')
text_loc = join_dirs('email_text.txt')
html_loc = join_dirs('email_text.html')
cred_loc = join_dirs('credentials.json')
sent_info = join_dirs('sent_info.txt')
# cred_loc = 'credentials.json'
message = MIMEMultipart("alternative")
'''
'''
def readFile(loc):
content = f.read()
return content
cred = json.load(f)
text = readFile(text_loc)
html = readFile(html_loc)
message.attach(part1)
message.attach(part2)
df = pd.read_excel(list_loc)
df.loc[list_email.isnull(), 'sent'] = -1
# Extract only those dataframes where email value is present
df_email_valid = df[~list_email.isnull()]
context = ssl.create_default_context()
message["From"] = sender
server.login(sender, pwd)
index_sent = df_email_valid.columns.get_loc('sent')
try:
if "To" in message:
else:
server.sendmail(
df.loc[i, 'sent'] = 1
except Exception as e:
f.write(
print(e)
df.to_excel(os.path.join(BASE_DIR, 'sent.xlsx'))
finally:
df.to_excel(os.path.join(BASE_DIR, 'sent.xlsx'))
print('All emails were sent successfully')