-3

I had to start coding on python without any education in coding. So my skill is shame. I have a telegram bot. Sometimes it crashes, I don't know why and actually it doesn't matter, but I need to make bot restart itself when it crashes because of some weird loss of data. So please explain me how to add while True or try-except. Please, teach me where should I put these constructions in my code. All the code has to be inside try statement, am I right? I am really sorry for dumb questions, but I need your help. Thank you!

Barbaros Özhan
  • 59,113
  • 10
  • 31
  • 55
  • 1
    You'd be best off reading a tutorial or two. And you should fix the underlying problem rather than restarting on failure. – mhawke Oct 09 '17 at 05:34
  • 1
    This is not a personalized on demand tutorial site. Just go read existing tutorials first and come back if you have a specific question that is not already addressed elsewhere. – Julien Oct 09 '17 at 05:36

2 Answers2

2

If you're using linux, then you could write an independent bash script that would restart your python script in case of crashes and keep it running:

until foo.py; do
    echo "'foo.py' crashed with exit code $?.  Respawning.." >&2
    sleep 1
done

You will want to run this bash script in the background:

nohup ./bar.sh &

(Source)

udhavsethi
  • 63
  • 7
-1

Going off Python: about catching ANY exception

You could do something like the following:

while (true):
    try:
        #your code here
    except:
       print "Caught an exception, discarding it."

Note that this catches ANY exception, which isn't a good idea.

pellucidcoder
  • 127
  • 3
  • 9