import time import random from sys import stdout import argparse ap = argparse.ArgumentParser() ap.add_argument("-b-min", type=int, help="burst minimum", default=1) ap.add_argument("-b-max", type=int, help="burst maximum", default=20) ap.add_argument("-d-min", type=int, help="sleep minimum ms", default=0) ap.add_argument("-d-max", type=int, help="sleep maximum ms", default=3000) ap.add_argument("-between", type=int, help="between maximum ms", default=1000) args = ap.parse_args() random.seed(int(1000*time.time())) def new_burst(): return random.randint(args.b_min, args.b_max) def new_between(): return random.randint(0, args.between) / 1000.0 def new_delay(): return random.randint(args.d_min, args.d_max) / 1000.0 with open("testdata/rand_0_13.txt", "r") as f: burst = new_burst() for line in f.readlines(): if burst: print(line.strip(), file=stdout) stdout.flush() time.sleep(new_between()) burst -= 1 if not burst: time.sleep(new_delay()) burst = new_burst()