#python-3.x #excel #pandas #reminders
#python-3.x #преуспеть #панды #напоминания
Вопрос:
Я делаю проект над программой уведомлений, которая считывает файл Excel по мере его редактирования, а затем отправляет уведомление о времени, когда вы устанавливаете напоминание. Код здесь:
import pandas as pd
import datetime
from plyer import notification
def remind(title, message):
notification.notify(title=title, message=message, timeout=10)
if __name__ == '__main__':
while True:
df = pd.read_excel("./reminder.xlsx")
for index, item in df.iterrows():
time = datetime.datetime.now().strftime("%H:%M:%S")
if time == item['Time']:
remind(item['Title'], item['Message'])
else:
continue
Программа работает нормально, но напоминание не появляется
, я работаю над python 3.7.9 на win8 (64-разрядная версия)
Ответ №1:
from numpy import nan
import pandas as pd
import datetime
from plyer import notification
import time
def notifyMe(title, message,icon):
notification.notify(
title=title,
message=message,
app_icon = icon,
timeout=10)
if __name__ == '__main__':
notifyMe("Hello","We are in together in these tough time","virusicon.ico")
df = pd.read_excel("reminder.xlsx")
df["Icon"] = df["Icon"].astype(str)
df["Heading"] = df["Heading"].astype(str)
df["Message"] = df["Message"].astype(str)
number_of_rows = len(df.index)
while True:
flag = True
for item in range(0,number_of_rows):
now = datetime.datetime.strptime(datetime.datetime.now().strftime("%H:%M:%S"),"%H:%M:%S")
x = datetime.datetime.strptime(df['Time'][item].strftime("%H:%M:%S"),"%H:%M:%S")
if x==now:
print(True)
print(df['Heading'][item], df['Message'][item],df["Icon"][item])
if df["Icon"][item]=="nan":
df["Icon"][item]=""
if df["Message"][item]=="nan":
df["Message"][item]=""
if df["Heading"][item]=="nan":
df["Heading"][item]=""
notifyMe(df['Heading'][item], df['Message'][item],df['Icon'][item])
time.sleep(1)
if now<=x:
flag = False
if flag:
exit()
Вы можете попробовать это. Это может помочь вам