I've made considerable progress on this script check the github in OP
I've live tested it in a while loop 24 hours and it maintains an output file of latency tested "nodes.txt"
def nodes(timeout=20, pings=999999, crop=99, noprint=False, write=False,
include=False, exclude=False, suffix=True, master=False):
# timeout : seconds to ping until abort per node
# pings : number of good nodes to find until satisfied (0 none, 999 all)
# suffix : checks each node for no suffix plus with /ws or /wss
# noprint : disables printing, only returns list of good nodes
# master : check only nodes listed in bitshares/ui/master
# crop : return only best nodes
# write : maintains an output file nodes.txt with list of best nodes