Spaces:
Runtime error
Runtime error
#!/usr/bin/env python | |
import argparse | |
import json | |
import sqlite3 | |
import time | |
if __name__ == "__main__": | |
parser = argparse.ArgumentParser(description="Program to generate JSONL files from a LibreTranslate's suggestions.db") | |
parser.add_argument( | |
"--db", | |
type=str, | |
nargs=1, | |
help="Path to suggestions.db file", | |
default='db/suggestions.db' | |
) | |
parser.add_argument( | |
"--clear", | |
action='store_true', | |
help="Clear suggestions.db after generation", | |
default=False | |
) | |
args = parser.parse_args() | |
output_file = str(int(time.time())) + ".jsonl" | |
con = sqlite3.connect(args.db, check_same_thread=False) | |
cur = con.cursor() | |
with open(output_file, 'w', encoding="utf-8") as f: | |
for row in cur.execute('SELECT q, s, source, target FROM suggestions WHERE source != "auto" ORDER BY source'): | |
q, s, source, target = row | |
obj = { | |
'q': q, | |
's': s, | |
'source': source, | |
'target': target | |
} | |
json.dump(obj, f, ensure_ascii=False) | |
f.write('\n') | |
print("Wrote %s" % output_file) | |
if args.clear: | |
cur.execute("DELETE FROM suggestions") | |
con.commit() | |
print("Cleared " + args.db) |