掌上百科 - PDAWIKI

用户名  找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 2975|回复: 18

[工具] 发个给mdd文件去声音的程序,python写的

[复制链接]

该用户从未签到

发表于 2014-5-26 22:42:20 | 显示全部楼层 |阅读模式
; G9 b0 P1 ^! O: R
在论坛转了一圈,似乎没有人发这方面的东西,自己捣鼓出一个7 |1 b" }5 h( }3 X5 N4 g) K

/ @! s4 w- P7 j1 V  r一、为什么要去声音?3 ?6 i: g; S5 g5 I$ w/ R# m
: k3 }' h7 O4 i) g& y! R# `2 v4 c' Q
原因1:手机的容量有限,主流的几个词典比如朗文5,mdd文件有1G多,放在手机上本人表示压力很大
9 W. O9 }& q3 g$ f  W" T: U- v原因2:现在许多词典都有声音,个人认为有一个带声的足以,没必要每个都带声,纯浪费空间
) C$ G2 i* S2 E( R8 }' Q
: n* D9 v4 C) M/ k& B& e* Q自测去掉声音后mdd文件大小可以降为原先的20%
% ]8 L7 p! [9 F3 a6 v7 _! n% M  v% C1 c" ^+ f6 `+ }  p5 ?1 T5 I& |( O4 y
二、反编译mdx/mdd,取得原始txt和data数据! r$ F0 X! |0 O0 K
# b9 v8 W; D# p: c( ]
目前通行的做法似乎是采用yhssdl大侠的Getdict,确实强大,佩服 ' I  g/ Z  d2 H
代码貌似没公开。从已经生成的txt和data着手处理固然可以,不过总觉得方法不够优雅 1 [- m' N2 N) c5 |
如果在反编译的同时顺便把声音给去了,岂不是更好?3 m! F8 z2 Y. q
于是用度娘找啊找,终于在newsmth上找到个牛人kingson写的python,可以做和Getdict同样的工作,  z1 c" v8 E( {# U5 i
且代码是公开的。小改几行,收工。
0 y) V* j. K2 R: d9 ^/ G
! W; q! }$ E9 e: o( H5 \原始代码在这里:
9 g( i4 s* _1 x4 P1 d; y  mhttps://bitbucket.org/xwang/mdict-analysis/src7 d" h6 J) n9 C
1 K! m6 W. R. O+ B$ g- L- K& k
本人修改过的见附件,搜下面关键字即可看到我加的代码6 i  D6 b+ T4 @- t$ J4 G
###bt4baidu add start: ^- d' o2 h4 x) H
###bt4baidu add end# [6 h  j7 l; _$ P

5 L2 U6 @" r8 g不会用python请找度娘,本人今天第一次用python。从搭环境到完工一共花半天不到。7 v1 ]  k2 l. }
强烈推荐用ulipad,体积小,超轻量,编辑调试手感很赞,还带个动态正则表达式环境+ E1 s, ]1 k; U9 @% `5 Y8 a2 x6 T

$ S$ n8 n% N* K& @三、编译mdx/mdd
7 X- }" a/ F* y
1 H& `) G# N9 ~6 D4 _* p这个就不废话了,直接上Rayman大婶的MdxBuilder; p. ?4 \! m3 w( n
2 J+ a! y; T# U/ |
注意:
0 U6 t( q$ N! b* g) ^1 w$ n" d: Z1、仅测试了手头有的几个词库,如果遇到例外情况请自行改代码解决,主要是改那个去html声音链接的正则表达式
$ _0 k; y2 d  _* @$ Z% A2、查看反编译出的data目录最好用cmd命令行方式,文件多,打开一次要等半天
8 e- C; ~3 ~' ^& t+ O& ]5 t3、本人比较忙,且比较懒,不常来,有问题可能不会及时回答
4 |0 B5 E3 @2 O! U% \4、安装文本和目录比较工具,如beyondcompare,方便校对
2 g8 N/ o# l' ]+ T' \5、干活之前做好备份。计算机小白就不要轻易尝试了,最好请在坛里找高手帮忙(美女可以找我! X' n. a" c6 P7 i8 c( o

本帖子中包含更多资源

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

x

评分

1

查看全部评分

本帖被以下淘专辑推荐:

  • TA的每日心情
    开心
    2018-3-19 02:23
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2017-1-31 12:40:18 | 显示全部楼层
    HTTPOPPP 发表于 2017-1-31 11:32
    4 o6 y5 |6 I: s+ A: V2 X可是mdd文件有时候也会包括词条.
      ?( L) k- z- U, c( f9 i
    词条全部在mdx,其实mdx就相当于HTML。常见的是:mdd有某些词条的图片
  • TA的每日心情
    难过
    2023-11-26 08:44
  • 签到天数: 49 天

    [LV.5]常住居民I

    发表于 2014-5-26 23:34:32 | 显示全部楼层
    谢谢分享!!!

    该用户从未签到

    发表于 2014-5-27 10:26:12 | 显示全部楼层
    删除了那个最大的mdd文件一般就搞定了

    该用户从未签到

    发表于 2014-5-27 11:42:19 | 显示全部楼层
    原作者不是xwang么 什么时候变成newsmth上找到个牛人kingson了- -
    9 O8 d3 o* k# L+ j- V) |https://www.pdawiki.com/forum/fo ... hread&tid=10619

    该用户从未签到

     楼主| 发表于 2014-5-27 12:39:37 | 显示全部楼层
    meigen 发表于 2014-5-27 11:42 & o8 l; }; J* X4 {5 Q( B# ]
    原作者不是xwang么 什么时候变成newsmth上找到个牛人kingson了- -- l: q- X# r% v+ w7 e& }
    https://www.pdawiki.com/forum/forum.ph ...

    , u" r2 A. F; g* M* \4 c! Mxwang就是kingson,kingson就是xwang

    该用户从未签到

     楼主| 发表于 2014-5-27 13:58:14 | 显示全部楼层
    用这个py脚本貌似能解开getdict无法处理的加密过的mdx
    & v6 r& L3 M, b" m: }2 Z% J2 Q" s0 m1 r: \
    另外getdict有些小bug,从mdd文件解出data时,有时候好像会写入垃圾数据,不过不影响浏览5 y4 w) Z* j) M; u5 c2 G5 H

    * [8 Q  @/ l; B& T1 y/ s1 g6 m附件是两个例子,比较大的那个getdict生成的,小的是py脚本生成的,用二进制比较可以看出来

    本帖子中包含更多资源

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

    x

    该用户从未签到

    发表于 2014-6-1 00:54:30 | 显示全部楼层
    正在学Python……
  • TA的每日心情
    奋斗
    2021-9-21 18:07
  • 签到天数: 167 天

    [LV.7]常住居民III

    发表于 2014-9-28 23:23:39 | 显示全部楼层
    谢谢分享,很实用,正想学习一下~

    该用户从未签到

    发表于 2014-11-4 20:49:47 | 显示全部楼层
    想用LDOCE5,又苦恼于文件太大,这下全解决了,赞~~~

    该用户从未签到

    发表于 2014-11-14 11:19:54 | 显示全部楼层
    收藏备用,谢谢.
  • TA的每日心情
    开心
    2018-10-3 08:04
  • 签到天数: 127 天

    [LV.7]常住居民III

    发表于 2016-11-22 09:43:52 | 显示全部楼层
    去声音之后有什么存在的意义

    点评

    因为有的人喜欢用独立的声音库.  发表于 2017-1-31 11:32
  • TA的每日心情
    开心
    2018-12-9 08:17
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2016-11-22 19:25:16 | 显示全部楼层
    bt4baidu真了不起!
  • TA的每日心情
    开心
    2018-4-26 16:40
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2017-1-31 11:32:50 | 显示全部楼层
    reuse 发表于 2014-5-27 10:26
    . M* x0 K) |: y% }$ l删除了那个最大的mdd文件一般就搞定了

    5 B, V( a) `0 v5 |* s$ W$ v可是mdd文件有时候也会包括词条.

    该用户从未签到

    发表于 2017-2-8 22:18:02 | 显示全部楼层
    这个真是不错。
  • TA的每日心情
    擦汗
    2018-8-21 14:27
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    发表于 2018-3-1 10:19:33 | 显示全部楼层
    竟然还有这么好的程序  必须实用下
  • TA的每日心情
    开心
    2018-8-5 09:45
  • 签到天数: 108 天

    [LV.6]常住居民II

    发表于 2018-3-2 10:49:20 | 显示全部楼层
    顶,支持
    % H3 A1 C3 C; e" N支持好作品哈哈哈哈哈
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2025-5-23 00:35 , Processed in 0.029783 second(s), 31 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

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