def read_input(filename): stream = open(filename, "r") i = 0 for line in stream: i += 1 (count, line) = get_path(line) yield ansi.remove_escapes("%03d -> %s" % (i, line.rstrip("\r\n"))) stream.close()
def read_input(filename, encoding, reverse=False): if filename: stream = open(filename, "r") else: stream = sys.stdin if reverse: lines = reversed(stream.readlines()) else: lines = stream for line in lines: yield unicode(ansi.remove_escapes(line.rstrip("\r\n")), encoding, "replace") stream.close()
def read_input(filename, encoding, reverse=False): import codecs if filename: if six.PY2: stream = codecs.getreader(encoding)(open(filename, "r"), "replace") else: stream = open(filename, "r", encoding=encoding) else: if six.PY2: stream = codecs.getreader(encoding)(sys.stdin, "replace") else: import io stream = io.TextIOWrapper(sys.stdin.buffer, encoding=encoding) if reverse: lines = reversed(stream.readlines()) else: lines = stream for line in lines: yield ansi.remove_escapes(line.rstrip("\r\n")) stream.close()
def read_input(filename, encoding, reverse=False, seperator=''): import codecs if filename: if six.PY2: stream = codecs.getreader(encoding)(open(filename, "r"), "replace") else: stream = open(filename, "r", encoding=encoding) else: if six.PY2: stream = codecs.getreader(encoding)(sys.stdin, "replace") else: import io stream = io.TextIOWrapper(sys.stdin.buffer, encoding=encoding) if reverse: lines = reversed(stream.readlines()) else: lines = stream # preprocess lines into "date-time <sep> path <sep> command" for ariadne # previously done with awk in shell scripts, but slows things down a bit for line in lines: arr = line.split('###') # check for malformed entry if len(arr) == 2: cmd = arr[0].rstrip() meta_data_arr = arr[1].split(',') if len(meta_data_arr) > 0: date = meta_data_arr[0] date=date.strip() path = meta_data_arr[4] path=path.strip() path.replace(' ','\\\\ ') line = date+seperator+path+seperator+cmd yield ansi.remove_escapes(line.rstrip("\r\n")) stream.close()