Я хочу отправить напоминание пользователю по электронной почте, в котором в качестве содержимого введен текст с использованием дат из базы данных sql, которую вводит пользователь. Я получаю входные данные со страницы PYQT, но мне не нужна никакая помощь, поскольку я получил входные данные в таблицу.
Это моя база данных:
Моя база данных
И это код, который я использую для получения информации, и способ отправки электронных писем в данный момент.
connection = sqlite3.connect("CURRENTUSER.db")
crsr = connection.cursor()
crsr.execute('SELECT User FROM USER WHERE ID = 1 ')
CurrentUser = crsr.fetchall()
CurrentUser = str([CurrentUser])
CurrentUser = CurrentUser.replace('[', '')
CurrentUser = CurrentUser.replace(']', '')
CurrentUser = CurrentUser.replace('(', '')
CurrentUser = CurrentUser.replace(')', '')
CurrentUser = CurrentUser.replace(',', '')
CurrentUser = CurrentUser.replace("'" , '')
connection = sqlite3.connect("Emaildatabase.db")
crsr = connection.cursor()
crsr.execute('SELECT Email FROM Email WHERE Username = ? ', (CurrentUser,))
Mail = crsr.fetchall()
Mail = str(Mail)
Mail = Mail.replace('[', '')
Mail = Mail.replace(']', '')
Mail = Mail.replace('(', '')
Mail = Mail.replace(')', '')
Mail = Mail.replace(',', '')
Mail = Mail.replace("'" , '')
ReminderDate = self.Reminder_Date.date().toPyDate()
DueDate = self.Due_Date.date().toPyDate()
ReminderTime = self.Reminder_Time.time().toString()
DueTime = self.Due_Time.time().toString()
ReminderDate = str(ReminderDate)
ReminderDate = ReminderDate.replace("-","/")
DueDate = str(DueDate)
DueDate = DueDate.replace("-","/")
Input = self.Info_Input.toPlainText()
Connection = sqlite3.connect("Reminders.db")
crsr = Connection.cursor()
crsr.execute ("SELECT ID FROM Reminder")
ID = crsr.fetchall()
IDLen = len(ID)
CurrentID = (IDLen + 1)
CurrentID = str([CurrentID])
CurrentID = CurrentID.replace('[', '')
CurrentID = CurrentID.replace(']', '')
CurrentID = CurrentID.replace('(', '')
CurrentID = CurrentID.replace(')', '')
CurrentID = CurrentID.replace(',', '')
CurrentID = CurrentID.replace("'", '')
Update = ("INSERT INTO Reminder (DueDate, ReminderDate, ReminderTime, DueTime, Text, ID) VALUES (?, ?, ?, ?, ?, ? )")
Values = [(DueDate, ReminderDate, ReminderTime, DueTime, Input, CurrentID)]
crsr.executemany(Update, Values)
Connection.commit()
yag = yagmail.SMTP('pythontest22222@gmail.com', 'phAR7b1H2uqII5G8YR')
contents = [
" HElllOOOO"
]
yag.send(Mail, 'Your Set Reminder', contents)
Я нашел способ планировать электронную почту но они были установлены с использованием кода без переменных или SQL данных.
send_time = dt.datetime(2018,8,26,3,0,0) # set your sending time in UTC
time.sleep(send_time.timestamp() - time.time())
Я до сих пор не знаю, как получить даты из таблицы, которые затем будут использоваться программой для планирования электронной почты.