-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathemail_sending.py
More file actions
33 lines (28 loc) · 1.47 KB
/
email_sending.py
File metadata and controls
33 lines (28 loc) · 1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
from smtplib import SMTP_SSL
import ssl
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from getpass import getpass
from database import *
def send_email_for_new_lessons(new_lesson_list, session):
courses = session.query(Lesson).filter(Lesson.course_id.in_(new_lesson_list)).all()
course_info = ""
idx = 1
for course in courses:
tutors = session.query(Tutor).filter(Tutor.lesson_id == course.lesson_id).all()
all_tutors = ",".join(f"Tutor:{tutor.full_name}-comp:{tutor.company}" for tutor in tutors)
course_info += f"{idx}) Name:{course.course_name} Price:{course.price} Level:{course.level} Link:{course.course_url} "\
f"Tutors:{all_tutors} \n"
idx += 1
context = ssl.create_default_context()
input_pass = getpass()
with SMTP_SSL("smtp.gmail.com", context=context) as smtp_server:
smtp_server.login("sonasah1919@gmail.com", password=input_pass)
msg_text = f"""Hi Dear user,\nPlease find below the updated list of suggested courses\n{course_info}Best wishes\nACA administration"""
context_text = MIMEText(msg_text, "plain")
message = MIMEMultipart("multipart")
message.attach(context_text)
message["Subject"] = "ACA new courses"
message["From"] = "sonasah1919@gmail.com"
message["To"] = "sonasah1919@gmail.com"
smtp_server.sendmail("sonasah1919@gmail.com", ["sonasah1919@gmail.com"], msg=message.as_string())