update to static server, updated time comparison.

This commit is contained in:
kuzh 2024-02-21 23:58:45 +01:00
parent 4a19b2cd68
commit 5fcbc772b1
2 changed files with 21 additions and 19 deletions

3
.vscode/launch.json vendored
View File

@ -33,7 +33,8 @@
"request": "launch", "request": "launch",
"program": "${workspaceFolder}/speedtest.py", "program": "${workspaceFolder}/speedtest.py",
"console": "integratedTerminal", "console": "integratedTerminal",
"args": ["--list"], // "args": ["--list", "--server 8018"],
// "args": ["--server", "8018"],
"justMyCode": false "justMyCode": false
} }
] ]

View File

@ -1837,7 +1837,7 @@ def printer(string, quiet=False, debug=False, error=False, **kwargs):
# return str(out) # return str(out)
def shell(): def shell(server=None):
"""Run the full speedtest.net test""" """Run the full speedtest.net test"""
global DEBUG global DEBUG
@ -1846,6 +1846,7 @@ def shell():
signal.signal(signal.SIGINT, ctrl_c(shutdown_event)) signal.signal(signal.SIGINT, ctrl_c(shutdown_event))
args = parse_args() args = parse_args()
args.server = server
# Print the version and exit # Print the version and exit
if args.version: if args.version:
@ -1885,7 +1886,7 @@ def shell():
else: else:
callback = print_dots(shutdown_event) callback = print_dots(shutdown_event)
printer('Retrieving speedtest.net configuration...', quiet) # printer('Retrieving speedtest.net configuration...', quiet)
try: try:
speedtest = Speedtest( speedtest = Speedtest(
source_address=args.source, source_address=args.source,
@ -1915,11 +1916,10 @@ def shell():
raise raise
sys.exit(0) sys.exit(0)
printer('Testing from %(isp)s (%(ip)s)...' % speedtest.config['client'], # printer('Testing from %(isp)s (%(ip)s)...' % speedtest.config['client'], quiet)
quiet)
if not args.mini: if not args.mini:
printer('Retrieving speedtest.net server list...', quiet) # printer('Retrieving speedtest.net server list...', quiet)
try: try:
speedtest.get_servers(servers=args.server, exclude=args.exclude) speedtest.get_servers(servers=args.server, exclude=args.exclude)
except NoMatchedServers: except NoMatchedServers:
@ -1936,10 +1936,10 @@ def shell():
'be an int' % ', '.join('%s' % s for s in args.server) 'be an int' % ', '.join('%s' % s for s in args.server)
) )
if args.server and len(args.server) == 1: # if args.server and len(args.server) == 1:
printer('Retrieving information for the selected server...', quiet) # printer('Retrieving information for the selected server...', quiet)
else: # else:
printer('Selecting best server based on ping...', quiet) # printer('Selecting best server based on ping...', quiet)
speedtest.get_best_server() speedtest.get_best_server()
elif args.mini: elif args.mini:
speedtest.get_best_server(speedtest.set_mini_server(args.mini)) speedtest.get_best_server(speedtest.set_mini_server(args.mini))
@ -1998,13 +1998,13 @@ def shell():
if args.share and not machine_format: if args.share and not machine_format:
printer('Share results: %s' % results.share()) printer('Share results: %s' % results.share())
utilities.convert_and_save_to_xlsx(str(results), "tmp/output.xlsx") utilities.convert_and_save_to_xlsx(str(results), "tmp/f24-ch1.xlsx")
def main(iternation=1): def main(iteration=1, server=[8018]):
for i in range(iteration): for i in range(iteration):
try: try:
shell() shell(server)
except KeyboardInterrupt: except KeyboardInterrupt:
printer('\nCancelling...', error=True) printer('\nCancelling...', error=True)
except (SpeedtestException, SystemExit): except (SpeedtestException, SystemExit):
@ -2021,12 +2021,13 @@ def main(iternation=1):
if __name__ == '__main__': if __name__ == '__main__':
schedule_time = "01:24" schedule_time = "23:13"
schedule.every().day.at(schedule_time).do(main)
repeat_count = 0 repeat_count = 0
current_time = datetime.datetime.now().time()
while True: while True:
if current_time.strftime("%H:%M") == schedule_time: current_time = datetime.datetime.now().strftime("%H:%M")
main(3) if current_time == schedule_time:
main(1)
break
else: else:
time.sleep(1) time.sleep(1)
# main()