掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 2640|回复: 18

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

[复制链接]

该用户从未签到

发表于 2014-5-26 22:42:20 | 显示全部楼层 |阅读模式
& E/ F: \1 `; H$ |; ^
在论坛转了一圈,似乎没有人发这方面的东西,自己捣鼓出一个
' v* Z3 F  R9 c; ]0 z4 F8 |
8 |0 t0 {, R) S6 u: M一、为什么要去声音?
0 Z7 A. }( ]/ `+ Z( [8 y% t5 p  n( O3 n4 ?9 f
原因1:手机的容量有限,主流的几个词典比如朗文5,mdd文件有1G多,放在手机上本人表示压力很大 : D8 I7 V9 L* j7 [
原因2:现在许多词典都有声音,个人认为有一个带声的足以,没必要每个都带声,纯浪费空间 8 ]% K1 z: Q& x1 `
. Y% R2 u5 Y$ q
自测去掉声音后mdd文件大小可以降为原先的20%. q; K4 v3 r: k9 a

( _9 I. J3 y1 u& @二、反编译mdx/mdd,取得原始txt和data数据
: ?1 k; x" @' g8 b6 k. n' K- P
9 i; [0 j6 [6 a' o) z. ~目前通行的做法似乎是采用yhssdl大侠的Getdict,确实强大,佩服 ! M) c, O6 f, E! F# f* F  ^
代码貌似没公开。从已经生成的txt和data着手处理固然可以,不过总觉得方法不够优雅 . Q, p" Z7 I  d: w4 `; q
如果在反编译的同时顺便把声音给去了,岂不是更好?
0 M& n2 `: @3 r2 z5 U' n" ]3 k' v于是用度娘找啊找,终于在newsmth上找到个牛人kingson写的python,可以做和Getdict同样的工作,) V# @* Q: I! u# I6 f
且代码是公开的。小改几行,收工。4 p, L! n9 `; e; _3 A! E8 n1 t

. J% q6 R0 X+ n0 ~( V% x: O7 W  b原始代码在这里:, ^& P+ o  Z5 \
https://bitbucket.org/xwang/mdict-analysis/src- E9 d' j3 \/ G

5 N5 G5 v$ S+ n$ b) }. G  j本人修改过的见附件,搜下面关键字即可看到我加的代码' r, p" \3 N' P* ~
###bt4baidu add start& V/ i. z8 k4 X- y: \* z/ r- f5 o; ]
###bt4baidu add end
. G/ z. _/ y  B" e
# r+ M1 R; F3 E9 e3 h1 q不会用python请找度娘,本人今天第一次用python。从搭环境到完工一共花半天不到。: V3 l/ Z0 ?1 N; v$ s+ F, q& p
强烈推荐用ulipad,体积小,超轻量,编辑调试手感很赞,还带个动态正则表达式环境+ N+ }- A, d; d0 z6 m4 }% B

; L# x# j. Q+ ^1 A三、编译mdx/mdd6 h4 M2 Y- }, a" C1 ^5 @% ]
5 V3 v9 S& n, T$ E; T  a) D  F( P
这个就不废话了,直接上Rayman大婶的MdxBuilder
9 ^; y& A4 i" t  Y7 T8 N+ f/ X- g/ U3 ~. v9 \2 f1 r0 i. s
注意:- [7 N! O' {# y$ [
1、仅测试了手头有的几个词库,如果遇到例外情况请自行改代码解决,主要是改那个去html声音链接的正则表达式- ]6 b4 e/ S0 I+ c) R9 r& R7 G
2、查看反编译出的data目录最好用cmd命令行方式,文件多,打开一次要等半天2 U0 [; E7 D% H4 V3 Z
3、本人比较忙,且比较懒,不常来,有问题可能不会及时回答! q1 o+ ^# c. K) m0 ^- M3 t' f
4、安装文本和目录比较工具,如beyondcompare,方便校对
& d+ c" Q# q+ E! l  O' k5、干活之前做好备份。计算机小白就不要轻易尝试了,最好请在坛里找高手帮忙(美女可以找我
+ s# D" P# f2 C" ?

本帖子中包含更多资源

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

x

评分

1

查看全部评分

本帖被以下淘专辑推荐:

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

    [LV.1]初来乍到

    发表于 2017-1-31 12:40:18 | 显示全部楼层
    HTTPOPPP 发表于 2017-1-31 11:32( y& ~( F/ \: q7 G" Y" o
    可是mdd文件有时候也会包括词条.

    + ~& m8 m8 |( H& G词条全部在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了- -
    . c. T& L& ?: D8 hhttps://www.pdawiki.com/forum/fo ... hread&tid=10619

    该用户从未签到

     楼主| 发表于 2014-5-27 12:39:37 | 显示全部楼层
    meigen 发表于 2014-5-27 11:42 * \# {" Q  s! W: k
    原作者不是xwang么 什么时候变成newsmth上找到个牛人kingson了- -
    2 K8 I& c% k: L+ s9 Hhttps://www.pdawiki.com/forum/forum.ph ...
    1 a! m" z. a; z) O& Q3 n1 O
    xwang就是kingson,kingson就是xwang

    该用户从未签到

     楼主| 发表于 2014-5-27 13:58:14 | 显示全部楼层
    用这个py脚本貌似能解开getdict无法处理的加密过的mdx( x; x1 ?& f' ?! F9 w: M
    7 k5 M: Y$ X8 z$ X- f2 E) \
    另外getdict有些小bug,从mdd文件解出data时,有时候好像会写入垃圾数据,不过不影响浏览
    9 {* P) s& |3 p7 r; m4 n4 C
    5 g/ I7 h8 P3 e0 A4 U附件是两个例子,比较大的那个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:261 [4 u) U  c1 S+ Z+ `1 j
    删除了那个最大的mdd文件一般就搞定了

    0 e/ Y( f# x" S2 q可是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 | 显示全部楼层
    顶,支持: l; s$ a: |/ c" _
    支持好作品哈哈哈哈哈
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-5-6 16:00 , Processed in 0.395478 second(s), 22 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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