25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.

100 satır
2.7 KiB

  1. from datetime import datetime
  2. import psutil
  3. import time
  4. from win10toast import ToastNotifier
  5. toaster = ToastNotifier()
  6. from datetime import datetime
  7. datetime.today().strftime('%Y-%m-%d')
  8. print("Example : firefox.exe")
  9. searching_process = input("Veuillez entrer le processus que vous voulez surveillé : ")
  10. def countdown(founded_process):
  11. heure_depart = time.time()
  12. print("Chronometre en marche !")
  13. print("Process surveillé : " + str(founded_process))
  14. print("Heure de départ (Secondes): " + str( int(heure_depart) ))
  15. while catch_process(searching_process) != None :
  16. print("En attente de fermeture")
  17. heure_arret = time.time()
  18. uptime_process = int(heure_arret) - int(heure_depart)
  19. heures = 0
  20. minutes = 0
  21. secondes = 0
  22. while uptime_process > 3600 :
  23. uptime_process = uptime_process - 3600
  24. heures += 1
  25. if heures < 10 :
  26. heures = '0' + str(heures)
  27. while uptime_process > 60 :
  28. minutes += 1
  29. uptime_process = uptime_process - 60
  30. if minutes < 10 :
  31. minutes = '0' + str(minutes)
  32. secondes = uptime_process
  33. if secondes < 10 :
  34. secondes = '0' + str(secondes)
  35. print("Uptime du processus : %s:%s:%s " % (heures, minutes, secondes))
  36. toaster.show_toast("NoSocialLife Counter","Arret du programme : " + searching_process )
  37. toaster.show_toast("NoSocialLife Counter","Uptime du processus : %s:%s:%s " % (heures, minutes, secondes))
  38. date = datetime.today().strftime('%d-%m-%Y')
  39. f = open("logs.txt", "a")
  40. f.write(date + " | Programme : " + searching_process + " | Uptime du processus : %s:%s:%s " % (heures, minutes, secondes))
  41. f.close()
  42. def main():
  43. toaster.show_toast("NoSocialLife Counter","Programme recherché : " + searching_process )
  44. process_running = False
  45. delay = 10
  46. founded_process = catch_process(searching_process)
  47. if founded_process != None :
  48. print("Le processus recherché à été trouvé!")
  49. process_running = True
  50. while process_running == False :
  51. founded_process = catch_process(searching_process)
  52. print("Etat de la recherche : " + str(founded_process))
  53. if founded_process != None :
  54. print("PROCESS TROUVE !")
  55. process_running = True
  56. time.sleep(1)
  57. countdown(founded_process)
  58. def catch_process(searching_process):
  59. catched = False
  60. for p in psutil.process_iter(attrs=['pid', 'name']):
  61. if p.info['name'] == searching_process :
  62. founded_process = p.info['name']
  63. catched = True
  64. if catched == False :
  65. founded_process = None
  66. return founded_process
  67. if __name__ == '__main__':
  68. try :
  69. main()
  70. except :
  71. print("Erreur, Redemarrage du script")
  72. main()