def _dump_one(service, sensor_id, format, **kwargs): filename = (sensor_id+'.'+format).encode('ascii', 'replace') with click.open_file(filename, "wb") as file: csv_mapping = OrderedDict(_mapping_for(shorten_json_id=False, **kwargs)) service = helium.Service(service.api_key, service.base_url) output = writer.for_format(format, file, mapping=csv_mapping) _process_timeseries(output, service, sensor_id, **kwargs)
def tabulate(result, map, **kwargs): mapping = OrderedDict(map) if not mapping or not result: return result _writer = kwargs.pop('writer', None) if not _writer: # Ugh, reaching for global state isn't great but very convenient here default_format = 'tty' if sys.stdout.isatty() else 'csv' format = click.get_current_context().params.get('format') # Ensure format is set to something sensible format = format or default_format file = click.utils.get_text_stream('stdout') _writer = writer.for_format(format, file, mapping=mapping) _writer.start() _writer.write_entries(result) _writer.finish()