qunwang6 发表于 2015-8-19 18:27:17

AppleDict2XML

本帖最后由 qunwang6 于 2015-8-19 22:56 编辑

References:
Reverse engineering Apple Dictionaries
Apple dictionaries
usage:
$ clang dedict.c -Wall -lz -o dedict
$ clang strip.c -Wall -o strip
$ ./dedict "Oxford Dictionary of English" | ./strip > dict.xml
$ egrep -o 'd:title="(.+?)"' dict.xml | awk -F\" '{print $2}' > words
需要注意的是
1.
原始代码是默认转换/Library/Dictionaries/里的词典,若要转换自定义路径的词典,可将以下代码
https://gist.github.com/josephg/5e134adf70760ee7e49d#file-dedict-c-L86
修改为
sprintf(filename,"%sContents/Body.data",argv);
2.
OS X 10.11系统内置词典里面的文件目录发生了变化,需要改以下代码就可以用了。
要修改的代码
https://gist.github.com/josephg/5e134adf70760ee7e49d#file-dedict-c-L86
修改为
sprintf(filename,"%sContents/Resources/Body.data",argv);
已编译好的文件。

28836919 发表于 2015-9-22 13:55:43

能把MDX转换成Mac自带词典可用的格式吗?

qunwang6 发表于 2015-9-22 14:13:38

28836919 发表于 2015-9-22 13:55
能把MDX转换成Mac自带词典可用的格式吗?

https://www.pdawiki.com/forum/forum.php?mod=viewthread&tid=13014
慢慢看吧

zlww0812 发表于 2015-9-24 06:01:11

这个不会用啊,能给个教程吗?非常需要几部mac上自带的词典,论坛上没有的,或者哪位大神出手把自带的Oxford Chinese Dictionary做成mdx,非常感谢

Wind508 发表于 2017-1-21 22:25:45

支持,谢谢分享

rylandu 发表于 2017-1-22 14:57:19

这个工具真好!谢谢楼主分享!

maxami 发表于 2017-7-31 02:09:23

正在尋找這樣的工具,太感謝了!

wuzhen88 发表于 2017-8-10 20:43:12

好东西,顶一个.

mrfu 发表于 2019-10-29 15:45:00

感谢楼主 小白要开始好好研究了

mrfu 发表于 2019-10-29 17:45:28

大神,我有点没看懂帖子介绍的mac词典导出放大,我在推荐的apple dictionary主页找到了一条py代码并运行,显示出了这样的报错,请问该怎么办!
Traceback (most recent call last):
File "/Users/xxx/Downloads/macdictexport/0dedict.py", line 31, in <module>
    for word, definition in gen_entry():
File "/Users/xxx/Downloads/macdictexport/0dedict.py", line 26, in gen_entry
    title = re.search('d:title="(.*?)"', entry).group(1)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/re.py", line 199, in search
    return _compile(pattern, flags).search(string)
TypeError: cannot use a string pattern on a bytes-like object
>>>

流星冲击 发表于 2019-10-29 20:14:50

mrfu 发表于 2019-10-29 17:45
大神,我有点没看懂帖子介绍的mac词典导出放大,我在推荐的apple dictionary主页找到了一条py代码并运行, ...

需要用python2导出,python3有问题。github内容页已经讨论到python3不能使用这个问题了。
macos下预装了python2和3,你需要切换成python2来导出,并且确认词典路径没有出错。mojave环境下我用python2导出mac词典成功,不过可惜的是,github没有给出索引词条的代码,单词没有屈折变化,例如查walks和walking不会跳转到walk之类的。

Guilmon 发表于 2022-8-20 15:31:47

非常感谢分享
页: [1]
查看完整版本: AppleDict2XML