from trygvis.eda import cli from trygvis.eda.digikey import * def run(category, sub_category, output_file, args): client = DigikeyClient() db = DigikeyDatabase() download_category_tree(db, client) c = db.find_category(category) if c is None: cli.do_exit("Could not find category \"%s\"" % category) sc = c.find_sub_category_by_label(sub_category) if c is None: cli.do_exit("Could not find sub-category \"%s\" inside \"%s\"" % (sub_category, category)) attributes = download_attribute_types_from_category(sc, client) db.merge_attribute_types(attributes) g = cli.create_graph() for a in attributes: [g.add(node) for node in a.to_nodes()] filename = output_file if output_file is not "-" else None cli.write_graph(gen_g=lambda: g, filename=filename)