掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 3562|回复: 11

[工具] AppleDict2XML

[复制链接]

该用户从未签到

发表于 2015-8-19 18:27:17 | 显示全部楼层 |阅读模式
本帖最后由 qunwang6 于 2015-8-19 22:56 编辑 ! ^& g" `) q! h0 x. P* Y$ X% r& x

2 D# m9 |4 E6 L+ q& S* EReferences:. C  D+ W: X( y/ W: Z8 O
Reverse engineering Apple Dictionaries
, ~! m- o# Z; {Apple dictionaries
/ r: d8 {: o/ c( m; q" v& ausage:4 f4 R2 l+ a% X" L3 b  N
  1. $ clang dedict.c -Wall -lz -o dedict
    4 X, V; c5 k* i! y
  2. $ clang strip.c -Wall -o strip
    7 y# T) i/ N" a$ e  \, l( s
  3. $ ./dedict "Oxford Dictionary of English" | ./strip > dict.xml* t$ e/ f- u9 C( w! u8 ]8 R4 a% ~! @
  4. $ egrep -o 'd:title="(.+?)"' dict.xml | awk -F" '{print $2}' > words
复制代码
& G+ W4 L, |4 {& ]. T
需要注意的是5 g- l! y0 h4 c; U$ z  m( `1 r
1.
* A6 }8 N4 L0 e+ _原始代码是默认转换/Library/Dictionaries/里的词典,若要转换自定义路径的词典,可将以下代码/ B$ f* z% Y$ @5 s9 r0 F& H
https://gist.github.com/josephg/ ... d#file-dedict-c-L865 ~9 p" Y3 P* v- g: q* o; g/ P" d/ ^
修改为' `# \# g( }% l+ I. T* K* `
  1. sprintf(filename,"%sContents/Body.data",argv[1]);
复制代码

( H, g$ O3 w$ u! W2.5 a. g6 p9 H7 y/ F
OS X 10.11系统内置词典里面的文件目录发生了变化,需要改以下代码就可以用了。
/ M. i) R* G4 F0 s* |( c  j5 O要修改的代码/ z- g3 j: Y% |/ A! u. h* v+ x& K
https://gist.github.com/josephg/ ... d#file-dedict-c-L862 ]) F1 G- M: a! x/ A  V" C$ b) p
修改为
3 |  {. a# T5 X3 Q0 s2 |/ R
  1. sprintf(filename,"%sContents/Resources/Body.data",argv[1]);
复制代码
! V( T2 `; W8 L& B" A' e
已编译好的文件。
. C! A  |/ p/ i6 r4 s$ s7 `; T6 }1 D

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

本帖被以下淘专辑推荐:

  • TA的每日心情
    奋斗
    2022-8-10 09:09
  • 签到天数: 940 天

    [LV.10]以坛为家III

    发表于 2015-9-22 13:55:43 | 显示全部楼层
    能把MDX转换成Mac自带词典可用的格式吗?

    该用户从未签到

     楼主| 发表于 2015-9-22 14:13:38 | 显示全部楼层
    28836919 发表于 2015-9-22 13:55
    ! b  h/ Q- @/ L( I3 r4 X能把MDX转换成Mac自带词典可用的格式吗?

      K( z6 l8 |+ }7 `  ^https://www.pdawiki.com/forum/fo ... hread&tid=13014
    + C4 d3 [0 m$ u. R慢慢看吧
  • TA的每日心情
    开心
    2018-6-30 06:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2015-9-24 06:01:11 | 显示全部楼层
    这个不会用啊,能给个教程吗?非常需要几部mac上自带的词典,论坛上没有的,或者哪位大神出手把自带的Oxford Chinese Dictionary做成mdx,非常感谢

    该用户从未签到

    发表于 2017-1-21 22:25:45 | 显示全部楼层
    支持,谢谢分享
  • TA的每日心情
    奋斗
    2018-4-16 08:43
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2017-1-22 14:57:19 | 显示全部楼层
    这个工具真好!谢谢楼主分享!
  • TA的每日心情
    慵懒
    2017-12-18 12:18
  • 签到天数: 64 天

    [LV.6]常住居民II

    发表于 2017-7-31 02:09:23 | 显示全部楼层
    正在尋找這樣的工具,太感謝了!

    该用户从未签到

    发表于 2017-8-10 20:43:12 | 显示全部楼层
    好东西,顶一个.
  • TA的每日心情
    奋斗
    2020-12-22 18:46
  • 签到天数: 43 天

    [LV.5]常住居民I

    发表于 2019-10-29 15:45:00 | 显示全部楼层
    感谢楼主 小白要开始好好研究了
  • TA的每日心情
    奋斗
    2020-12-22 18:46
  • 签到天数: 43 天

    [LV.5]常住居民I

    发表于 2019-10-29 17:45:28 | 显示全部楼层
    大神,我有点没看懂帖子介绍的mac词典导出放大,我在推荐的apple dictionary主页找到了一条py代码并运行,显示出了这样的报错,请问该怎么办!
    / [  p* r% t5 t4 g
    Traceback (most recent call last):
    . R. x5 z  @! ~: p1 J8 O  File "/Users/xxx/Downloads/macdictexport/0dedict.py", line 31, in <module>' u' M7 o! z, y
        for word, definition in gen_entry():$ s: R7 t" N! ?$ v
      File "/Users/xxx/Downloads/macdictexport/0dedict.py", line 26, in gen_entry
    - S& G0 H( w+ z* s7 P" G: ]" M    title = re.search('d:title="(.*?)"', entry).group(1)2 P2 P* M  V3 o& k4 G
      File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/re.py", line 199, in search
    & \) C4 L! b7 i1 Q) U- h4 |    return _compile(pattern, flags).search(string)
    ; g) @0 d6 v8 @8 m( |0 a4 [: MTypeError: cannot use a string pattern on a bytes-like object
    / b* n5 [! G" f; g5 a>>>
  • TA的每日心情
    开心
    2019-3-26 21:36
  • 签到天数: 178 天

    [LV.7]常住居民III

    发表于 2019-10-29 20:14:50 | 显示全部楼层
    mrfu 发表于 2019-10-29 17:459 j3 n* D* G6 y6 U  q
    大神,我有点没看懂帖子介绍的mac词典导出放大,我在推荐的apple dictionary主页找到了一条py代码并运行, ...
    # {" r% K8 e' {) S, \5 @" \
    需要用python2导出,python3有问题。github内容页已经讨论到python3不能使用这个问题了。7 M4 a0 f+ r& k, n8 g9 ~$ N  l
    macos下预装了python2和3,你需要切换成python2来导出,并且确认词典路径没有出错。mojave环境下我用python2导出mac词典成功,不过可惜的是,github没有给出索引词条的代码,单词没有屈折变化,例如查walks和walking不会跳转到walk之类的。

    该用户从未签到

    发表于 2022-8-20 15:31:47 | 显示全部楼层
    非常感谢分享
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    小黑屋|手机版|Archiver|PDAWIKI |网站地图

    GMT+8, 2024-5-9 03:36 , Processed in 0.049255 second(s), 10 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

    快速回复 返回顶部 返回列表