From 117431b9511be07db8ce53526dbb985b5fad00a2 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Wed, 28 Dec 2016 14:08:52 +0100 Subject: o Adding 'digikey-download-metadata' tool that downloads everything from Digi-Key. Should support writing directly to database. --- trygvis/eda/cli/kicad_bom_to_ttl.py | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) (limited to 'trygvis/eda/cli/kicad_bom_to_ttl.py') diff --git a/trygvis/eda/cli/kicad_bom_to_ttl.py b/trygvis/eda/cli/kicad_bom_to_ttl.py index c7d6899..b017767 100755 --- a/trygvis/eda/cli/kicad_bom_to_ttl.py +++ b/trygvis/eda/cli/kicad_bom_to_ttl.py @@ -3,6 +3,7 @@ import functools import os.path import re +import sys import xml.etree.ElementTree from urllib.parse import quote_plus @@ -246,9 +247,27 @@ class Export(object): return kicad_rdf.KICAD_BOARD[title] -def run(src, dst, args): - from trygvis.eda import cli +def run(args): + if args.input is not None: + src = open(args.input, "r") + else: + src = sys.stdin + if args.output is not None: + parent = os.path.dirname(args.output) + if not os.path.exists(parent): + os.mkdir(parent) + dst = open(args.output, "wb") + else: + dst = sys.stdout.buffer + + schematic_url = args.schematic_url if hasattr(args, 'schematic_url') else None + + with src, dst: + process(src, dst, schematic_url) + + +def process(src, dst, schematic_url): tree = xml.etree.ElementTree.parse(src) root = tree.getroot() @@ -316,7 +335,7 @@ def run(src, dst, args): # if digikey is not None: # cli.info(' Digikey: %s' % digikey) - schematic_url = args.schematic_url if hasattr(args, 'schematic_url') else export.generate_schematic_url() + schematic_url = schematic_url if schematic_url is not None else export.generate_schematic_url() # cli.info() # cli.info('=== Summary ===') -- cgit v1.2.3