Added main process to avoid error in the sub process.

This commit is contained in:
kuzh 2024-02-25 23:40:49 +01:00
parent 393099c714
commit 3b496bae86
2 changed files with 35 additions and 28 deletions

19
runtest.py Normal file
View File

@ -0,0 +1,19 @@
import subprocess
import time
import datetime
if __name__ == "__main__":
# Replace 'script.py' with the name of the Python script you want to run
script_path = "speedtest.py"
schedule_time = "23:38"
repeat_count = 2
while True:
current_time = datetime.datetime.now().strftime("%H:%M")
if current_time == schedule_time:
for i in range(repeat_count):
subprocess.run(["python", script_path])
break
else:
time.sleep(1)

View File

@ -1997,36 +1997,24 @@ def shell():
if args.share and not machine_format:
printer('Share results: %s' % results.share())
utilities.convert_and_save_to_xlsx(str(results), "tmp/f24-ch1.xlsx")
utilities.convert_and_save_to_xlsx(str(results), "tmp/dev-test.xlsx")
def main(iteration=1):
for i in range(iteration):
try:
shell()
except KeyboardInterrupt:
printer('\nCancelling...', error=True)
except (SpeedtestException, SystemExit):
e = get_exception()
# Ignore a successful exit, or argparse exit
if getattr(e, 'code', 1) not in (0, 2):
msg = '%s' % e
if not msg:
msg = '%r' % e
raise SystemExit('ERROR: %s' % msg)
i+=1
if i == iteration:
break
def main():
try:
shell()
except KeyboardInterrupt:
printer('\nCancelling...', error=True)
except (SpeedtestException, SystemExit):
e = get_exception()
# Ignore a successful exit, or argparse exit
if getattr(e, 'code', 1) not in (0, 2):
msg = '%s' % e
if not msg:
msg = '%r' % e
raise SystemExit('ERROR: %s' % msg)
if __name__ == '__main__':
schedule_time = "23:13"
repeat_count = 0
while True:
current_time = datetime.datetime.now().strftime("%H:%M")
if current_time == schedule_time:
main(1)
break
else:
time.sleep(1)
# main(5)
main()