写了个粗糙的 python 脚本对解包后的 txt 处理了一下:
with open('旺文社漢字典 第四版.mdx.txt', 'r', encoding='utf-8') as f:
d = {}
a = []
i = 0
for _ in f:
line = _.strip()
if not line.startswith('<'):
hw = line
elif line.startswith('<html>'):
if line not in d:
d[line] = hw
elif hw != d[line]:
at = f'{hw}\n@@@LINK={d[line]}\n</>\n'
if at not in a:
a.append(at)
i += 1
if i % 3000 == 0:
print(i, end='\r')
with open('output.txt', 'w', encoding='utf-8') as f:
f.writelines(f'{v}\n{k}\n</>\n' for k, v in d.items())
print(len(d), 'entries ...')
f.writelines(a)
print(len(a), '@@@LINKs ...')
得到 52656 个条目和 10444 个跳转链接(@@@LINK)
原 txt 文件 340MB,处理后 ➔ 85MB mdx.txt.zip (8.0 MB)
原 mdx 文件 23.2MB,处理后 ➔ 10.1MB output.mdx (10.1 MB)
请帮我看看这个脚本的处理方式是否有问题?