0

I want to schedule (every day at 17:00) a single function in a flask app (my flask app has multiple functions). How can I do that?

from flask import Flask
import schedule
import time

app = Flask(__name__)
app.secret_key = 'my precious'

def fct1():
    print("bla bla bla")

def myfunction():
    print("aaaaaaaaaaaaaaaa")

def programare():
    schedule.every().day.at("17:00").do(fct1)
    while True:
        schedule.run_pending()
        time.sleep(1)

if __name__== '__main__':
    app.run(debug=True)
  • Does this answer your question? [How to schedule a function to run every hour on Flask?](https://stackoverflow.com/questions/21214270/how-to-schedule-a-function-to-run-every-hour-on-flask) – b9s Sep 07 '20 at 13:55

1 Answers1

1

Simple thread if server startted standalone:

if __name__== '__main__':
    import threading
    
    threading.Thread(target=programare).start()
    app.run(debug=True)

If server deployed with wsgi or etc I suggest to run shedule separately.

eri
  • 3,133
  • 1
  • 23
  • 35