|
|
|
|
|
by kakadzhun
1839 days ago
|
|
Script to filter out records of a .jsonl file based on some property (e.g. only want records w/ a timestamp greater than 163623...): import sys
import orjson
import argparse
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('expr')
parser.add_argument('file', nargs='?')
args = parser.parse_args()
expression = compile(args.expr, '<string>', 'eval', optimize=0)
if args.file:
stream = open(args.file, 'f')
else:
stream = sys.stdin
try:
for line in stream:
json = orjson.loads(line)
if eval(expression, {}, json):
print(line.strip())
finally:
if args.file:
stream.close()
|
|