from pyperclip import init_xclip_clipboard from itertools import chain from figi_backfill import submit, get_figi copy, paste = init_xclip_clipboard() cusips = chain.from_iterable((l.split(",") for l in paste().split("\n"))) securities = ({"idType": "ID_CUSIP", "idValue": cusip} for cusip in cusips) figis = [] for job, response in submit(securities): for j, r in zip(job, response): try: figi = get_figi(r) except ValueError: continue else: figis.append(figi) copy("\n".join(figis))