def main(output, **kwargs): # Prepare writer for given output stream pp = pprint.PrettyPrinter(indent=2, stream=output, width=100) s = Sequential() s.callback(parse) s.callback(params_todict) s.callback(pp.pprint) s.errback(logging.error) clistream(s, **kwargs)
def main(output, output_encoding, **kwargs): kml = simplekml.Kml() s = Sequential() s.callback(RowMapper(FIELDS)) s.callback(mapping) s.callback(lambda r: kml.newpoint(**r)) s.errback(logging.error) # Consume input stream, "kml" holds converted points clistream(s, delimiter=',', **kwargs) output.write(kml.kml().encode(output_encoding))
def main(config, output, **kwargs): if config is None: raise SystemExit('-c/--config option is required.') fields = json.load(config)['fields'] config.close() writer = csv.writer(output, delimiter='\t', quotechar='\t', quoting=csv.QUOTE_NONE) mapping = DictMapper(fields) s = Sequential() s.callback(parse) s.callback(mapping) s.callback(writer.writerow) s.errback(logging.error) clistream(s, **kwargs)
def main(output, **kwargs): G = Graph() # Set sequential callbacks to accept input records s = Sequential() s.callback(RowMapper(FIELDS)) s.callback(G.add) s.errback(logging.error) # Consume input stream, "G" holds converted records in a graph manner clistream(s, delimiter=',', **kwargs) G.render(output)
def main(): args = parse_arguments( files=dict(nargs='*'), skip_prefix=dict(flags='--skip-prefix', type=argparse.FileType('r'), metavar="FILE", help='Skip pattern file for prefix match'), skip_suffix=dict(flags='--skip-suffix', type=argparse.FileType('r'), metavar="FILE", help='Skip pattern file for suffix match')) # Read schema definition. if args.config is None: raise SystemExit('-c/--config option is required.') fields = json.load(args.config)['fields'] args.config.close() # Load skip pattern files if given. if args.skip_prefix: skip_prefix = [l.strip() for l in args.skip_prefix] else: skip_prefix = None if args.skip_suffix: skip_suffix = [l.strip() for l in args.skip_suffix] else: skip_suffix = None collector = Collector(skip_prefix, skip_suffix) # Set sequential callbacks to accept input records s = Sequential() s.callback(RowMapper(fields)) s.callback(collector.collect) s.errback(LOGGER.error) # Consume input stream, "G" holds converted records in a graph manner clistream(s, delimiter='\t', files=args.files) collector.dump(args.output)