Python Forum

Full Version: scheduled job only runs once
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
import time
import schedule

def job():
    import asdf_1 # "asdf_1" is a .py file that runs fine on its own

schedule.every().day.at("13:00").do(job)

while True:
    schedule.run_pending()
    time.sleep(1)
the above code only runs once at the first 13:00 mark. it doesn't run the next day or the day after or ever. why? i know crontab is a more versatile (and perhaps reliable) scheduling module. but at this point i'm more curious why the "schedule" module doesn't work in this case.
Quote:why?
def job():
    import asdf_1 
All that you code do is importing module. Python's modules are imported only once per process.
(Aug-19-2019, 06:53 AM)fishhook Wrote: [ -> ]
Quote:why?
def job():
    import asdf_1 
All that you code do is importing module. Python's modules are imported only once per process.

would love to know the alternative... other than execfile of course...
refactor asdf_1?
(Aug-19-2019, 06:55 AM)Stan2292 Wrote: [ -> ]would love to know the alternative... other than execfile of course...
importlib.reload(packagename)