I want to write a program that keeps running in the background and performs a certain task at each hour of the day. How do I achieve this?
Advertisement
Answer
for production i would add cron or schedule
JavaScript
x
48
48
1
# Schedule Library imported
2
import schedule
3
import time
4
5
# Functions setup
6
def sudo_placement():
7
print("Get ready for Sudo Placement at Geeksforgeeks")
8
9
def good_luck():
10
print("Good Luck for Test")
11
12
def work():
13
print("Study and work hard")
14
15
def bedtime():
16
print("It is bed time go rest")
17
18
def geeks():
19
print("Shaurya says Geeksforgeeks")
20
21
# Task scheduling
22
# After every 10mins geeks() is called.
23
schedule.every(10).minutes.do(geeks)
24
25
# After every hour geeks() is called.
26
schedule.every().hour.do(geeks)
27
28
# Every day at 12am or 00:00 time bedtime() is called.
29
schedule.every().day.at("00:00").do(bedtime)
30
31
# After every 5 to 10mins in between run work()
32
schedule.every(5).to(10).minutes.do(work)
33
34
# Every monday good_luck() is called
35
schedule.every().monday.do(good_luck)
36
37
# Every tuesday at 18:00 sudo_placement() is called
38
schedule.every().tuesday.at("18:00").do(sudo_placement)
39
40
# Loop so that the scheduling task
41
# keeps on running all time.
42
while True:
43
44
# Checks whether a scheduled task
45
# is pending to run or not
46
schedule.run_pending()
47
time.sleep(1)
48