Silicon's blog

Menu
  • Home
  • Kadena
  • Solana
  • Ethereum
  • Bot Automation
  • Proxmox
  • Nginx Proxy Manager
  • Others
  • Contact
Menu

How to autorestart your python script on crash using Spyder on Raspbian/Ubuntu

Posted on May 14, 2023May 17, 2023 by Silicon
Sharing is Caring:
Twitter 0
Copy 0

 

Python is an easy-to-use language. Developers can build up an automation tool quickly using libraries provided by others. However, if it is crashed during execution and there is no exception handling script, it will not restart automatically. This article will introduce a way to handle exceptions and restart your Python script once it is terminated. The script has been tested on Raspbian Buster/Bullseye and Ubuntu Desktop 22.04.

Prerequisite: You have to install Spyder on your system. You may encounter some issues during the installation of Spyder on Ubuntu 22.04. Check out my article to fix it. You may also look at my other article about how to set up an auto-start Python script on Spyder.

Step 1: Create a bash script on your Desktop folder

cd /home/pi/Desktop
nano restartOnCrash.sh
#!/bin/bash

while true; do
  ps --no-headers -C spyder3 || spyder3
  sleep 1m
done

It will check whether the Spyder IDE is live every minute.

Step 2: Make it executable by

chmod +x restartOnCrash.sh

Step 3: Add an XDG autostart application to your system

sudo nano /etc/xdg/autostart/restartOnCrash.desktop
[Desktop Entry]
Type=Application
Name=RestartOnCrash
Comment=Restart spyder on crash
Exec=lxterminal --working-directory=/home/pi/Desktop/  -e ./restartOnCrash.sh
Terminal=true

Step 4: Restart your device. Spyder will be executed automatically on start. You may add

os.system('pkill -f "spyder3"')

to your exception handling (remember to import os). Spyder will restart automatically.

Leave a Reply Cancel reply


The reCAPTCHA verification period has expired. Please reload the page.

©2025 Silicon's blog
Click to Copy