import zipfile, json, os base = r"e:\MCStudioDownload\work\3027246179@qq.com\Cpp\AddOn\309c2d420bc84ee986db9cdd070ff02a\_sa_hanhua_out" tokens = ["pastel","coxinha","brigadeiro","pacoquita","wind","chips","cheese_bread", "cereal","cracker","guarana","duff","burger","hot_dog","taco","donut","waffle", "biscuit","toast","burrito","candy","jam","cheese","butter","peanut","granola", "energy","vodka","whiskey","wine","beer","cola","pepsi","fanta","monster","coffee"] langs = { "sa_decor-forge-1.20.1-1.0.3.jar": "assets/sa_decor/lang/", "sa_essentials-forge-1.20.1-1.0.0.jar": "assets/sa_combat/lang/", "sa_lib-forge-1.20.1-1.0.1.jar": "assets/sa_core/lang/", } lines = [] for jar, langdir in langs.items(): p = os.path.join(base, jar) with zipfile.ZipFile(p) as z: names = set(z.namelist()) en = json.loads(z.read(langdir + "en_us.json").decode('utf-8')) if langdir + "en_us.json" in names else {} pt = json.loads(z.read(langdir + "pt_br.json").decode('utf-8')) if langdir + "pt_br.json" in names else {} zh = json.loads(z.read(langdir + "zh_cn.json").decode('utf-8')) if langdir + "zh_cn.json" in names else {} hits = [k for k in (set(en) | set(pt) | set(zh)) if any(t in k.lower() or t in str(en.get(k,'')).lower() or t in str(pt.get(k,'')).lower() for t in tokens)] lines.append("=" * 30 + " " + jar + f" hits={len(hits)}") for k in sorted(hits): lines.append(f"{k}\n EN: {en.get(k,'')}\n PT: {pt.get(k,'')}\n ZH: {zh.get(k,'')}") with open(os.path.join(base, "_tmp", "food_all.txt"), "w", encoding="utf-8") as f: f.write("\n".join(lines)) print("done")