From 182b0f01b8c4680e9fe67fb9cc5bcd1f5ae11890 Mon Sep 17 00:00:00 2001 From: tokarev Date: Mon, 10 Oct 2022 14:42:57 +0300 Subject: [PATCH] Added a method for converting a server dictionary to a server list --- speedtest.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/speedtest.py b/speedtest.py index 186b529..a137c31 100755 --- a/speedtest.py +++ b/speedtest.py @@ -1437,6 +1437,14 @@ class Speedtest(object): printer('Closest Servers:\n%r' % self.closest, debug=True) return self.closest + @staticmethod + def get_normalize_servers(dict_servers): + """ + Converting a server dictionary to a server list + """ + + return [server for _, servers in dict_servers.items() for server in servers] + def get_best_server(self, servers=None): """Perform a speedtest.net "ping" to determine which speedtest.net server has the lowest latency @@ -1445,7 +1453,11 @@ class Speedtest(object): if not servers: if not self.closest: servers = self.get_closest_servers() - servers = self.closest + else: + servers = self.closest + + if type(servers) is dict: + servers = self.get_normalize_servers(servers) if self._source_address: source_address_tuple = (self._source_address, 0)