How to get python script to run itself once per day?

I am willing to buy the Hacker plan so I can turn “always-on” on but I am not sure that will do what I want. If the Python script is always on, is there a way to get Repl.it to actually run the script once per day? I know PythonAnywhere has some scheduler functionality but I was hoping to stay with Repl.it. Thanks.

You can setup an uptime robot to ping the replits link, with a one day interval

  1. Go to UptimeRobot
  2. login/register
  3. Go to the dashboard and select add monitor.
  4. Put the Link in the URL area, and set the name to whatever you please.
    5.set the interval to 24 hours.
  5. Select create monitor.
    Oh, and it’s free

thanks for the reply, I’m still learning but does having UptimeRobot load the Replit link have the effect of hitting the “RUN” button on my code in Replit? So far my script does its thing when I hit the “run” button and it is not a Flask site or anything like that, its just a script.

Is there anyway you can link your Repl? This bot is created to be on a site, but you could optimize your Repl to work with this.

Let me understand this you have a program on replit and you need it to keep always on ?

If this is case you can use Always On feature - Premium

If you need to re run the running repl even when always on then you can write a small additional program like timer to re run the program at your desired interval.

Also you can then add 3 party service like uptime robot to keep repl monitoring on and ping it constantly to make sure its running and may set triggers to know if program is stopped or any error has occurred.

2 Likes

Just to let you know, UptimeRobot has stopped pinging repls

Thanks for all the responses. Like I mentioned I am new to coding and this was my first real project I did on my own during this self-taught journey. It turns out that if my Repl is always on I seem to be able to accomplish what I wanted with the Python Time module and a simple While loop.

import time

while 1:
    print ("Restarting...")
    [[ my script code to run ]]
    time.sleep(86400)

I am still learning a lot but so far this seems like it might work.

3 Likes

Trial and debugging is best way to learn keep up the work :+1:

You need to publish/ make public, I am not able to access it.

I have repls runing with it now

You should then mark the reply you just did as the solution.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.