Hi guys,
I am wondering if anyone can help me format this email so that I just get a bolded: Here are the new jobs from Tethers Unlimited: and then the remaining jobs that populate the email are plain text. I am having a difficult time with the HTML and variable calling because I'm not sure how to manipulate the variable to pull it out of a Set[str] when I can only concatenate strings.
Here is the code:
I am wondering if anyone can help me format this email so that I just get a bolded: Here are the new jobs from Tethers Unlimited: and then the remaining jobs that populate the email are plain text. I am having a difficult time with the HTML and variable calling because I'm not sure how to manipulate the variable to pull it out of a Set[str] when I can only concatenate strings.
Here is the code:
def send_email(jobs):
import smtplib, ssl
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
port = 465
password = "XXXX"
sender_email = "XXXX"
receiver_email = "XXXX"
linebreak = '\n'
message = MIMEMultipart("alternative")
message["Subject"] = "Tethers Unlimited Jobs"
message["From"] = sender_email
message["To"] = receiver_email
text = f"""\
Here are the new jobs from Tethers Unlimited:\n{linebreak.join(jobs)}"""
html ="""
<html>
<body>
<p><b>Here are the new jobs from Tethers Unlimited:</b><br>
""" + {linebreak.join(jobs)} + """
</p>
</body>
</html>
"""
part1 = MIMEText(text,"plain")
part2 = MIMEText(html,"html")
message.attach(part1)
message.attach(part2)
context = ssl.create_default_context()
with smtplib.SMTP_SSL("smtp.gmail.com", port, context=context) as server:
server.login("[email protected]", password)
server.sendmail(sender_email, receiver_email, message.as_string())Here is the error I get when I run it:Error:C:\Python34\venv\Scripts\python.exe C:/Users/Cknut/venv/PersonalCrawlers/TethersUnlimited.py
Traceback (most recent call last):
File "C:/Users/Cknut/venv/PersonalCrawlers/TethersUnlimited.py", line 22, in <module>
send_email(job_list_split)
File "C:\Users\Cknut\venv\PersonalCrawlers\send_email.py", line 19, in send_email
html ="""
TypeError: can only concatenate str (not "set") to str
Process finished with exit code 1
buran write Mar-08-2021, 08:59 AM:
Please, use proper tags when post code, traceback, output, etc. This time I have added tags for you.
See BBcode help for more info.
Please, use proper tags when post code, traceback, output, etc. This time I have added tags for you.
See BBcode help for more info.
