挖掘 macOS 词典文件的方法

2022-11-16 14:46:23 +08:00
 springwood

在 macOS 已经启用了一个或者若干个词典的情况下:

首先查看 /System/Library/AssetsV2/com_apple_MobileAsset_DictionaryServices_dictionaryOSX/ 这个目录,里面以一连串数字开头、以 .asset 结尾的目录,就是词典文件。一个 .asset 目录对应一个文件。你的词典 app 里面开启了几种词典,这里就有几个目录。比如我有三个词典,因此有三个 .asset 目录。

再看目录下面的 AssetData ,里面写着词典的名字,比如我准备研究 Simplified Chinese – Japanese.dictionary

继续看词典下面的 Contents/Resources/,有个写着 Body.data 的文件,这就是词典的数据文件。是二进制文件,不能直接打开。

这时需要使用 github 上的 apple-dictionary 这个工具来解析词典 Body.data 文件,命令是:

./dedict ./Body.data | ./strip | ./checkxml.py > dictionary.xml

此时在当前目录下面生成一个 dictionary.xml 文件。然后就可以用自己喜欢的编程语言解析这个 XML 文件了。

955 次点击
所在节点    Apple
6 条回复
acoldfox
2022-11-17 15:33:20 +08:00
不错,最近在研究辞典提取
flyingdog
2022-11-17 15:41:00 +08:00
为什么不直接用网易云的词典 API 呢?
Vesper
2022-11-17 23:24:42 +08:00
不錯,感謝分享。
springwood
2022-11-18 10:11:31 +08:00
@flyingdog 自带的词典好用多了
flyingdog
2022-11-19 13:44:05 +08:00
@springwood 这样啊。但是网易的,可以有读音啊,自带的词典只能查意思。
问一下啊,你拿到这个 xml 文件之后,你准备进行一些开发吗?比如说自动查词或者或者建生词库吗?
springwood
2022-11-19 15:50:06 +08:00
哦,我拿到 xml 之后是做一些统计而已,不是专业搞开发的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/895681

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX