掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 392|回复: 17

[工具] 从mdx提取指定的词条,并打包成mdx

[复制链接]
  • TA的每日心情
    开心
    2019-1-21 17:00
  • 签到天数: 376 天

    [LV.9]以坛为家II

    发表于 2019-8-11 19:40:53 | 显示全部楼层 |阅读模式
    本帖最后由 simonfire 于 2019-8-14 11:25 编辑
    ; m7 \% ^: H0 v: @8 O: c+ ?- a1 ?+ Z0 M1 R4 A2 Y8 U* g
    用python写的一个小工具,解析和打包都是用的zzzz_sleep的 mdict-utils。
    7 @! \; @5 T, B# m  J# W+ y用法:把需要提取的单词制成一行一个的格式,命名为input.txt(文件编码有要求,必须是UTF-8(无BOM,也叫无签名),要提取的mdx文件命名为input.mdx,和解压的exe文件放在同一目录,双击运行exe文件就行了。正常运行的话,会生成名为output的txt和mdx文件。8 p- ]& \0 \0 c
    目前只进行了简单的测试,有使用问题后续再修复吧
    * G' c1 v, w6 m' [加了程序运行时打印正在提取的单词,你可以知道个大概的进度
    9 W1 F' ?5 X% Z) j6 z然后现在程序是单线程运行,所以速度很慢(目测1秒才2-3个单词),最好不要弄太多词条去提取,后续可能会增加多线程,看情况吧
    9 J2 f% l* M8 o9 v下载地址,度盘:
    & }( U7 v( d" p2 \- b/ l$ j链接:https://pan.baidu.com/s/11nIBxwL5-CYZhFfiK9njyw 提取码:0jfa 复制这段内容后打开百度网盘手机App,操作更方便哦% G! L3 d4 Y2 Q* @

    % h" s2 ^7 U$ k# D. p+ O: M2 W: fps:要源码的朋友,我这代码总共10多行,没有一点学习价值,想学习的去看看 mdict-utils的源码吧。2 A. ]: w, i! s& @$ x3 B/ J% {6 _
    ps2:试着加多线程提升速度,但是发现并没有用,速度反而不如原来,不知道是我姿势不对还是怎么回事,所以这个速度问题应该会无限期搁置吧,哈哈。

    评分

    5

    查看全部评分

    本帖被以下淘专辑推荐:

  • TA的每日心情
    开心
    2018-8-8 03:13
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2019-8-11 20:18:51 | 显示全部楼层
    simonfire 兄:
    8 p) ^4 y' E* G! D能想出如此的懒人包
    3 I% l3 O( p2 ~! f8 x對於幼幼班的真是一大福利6 u. N; x4 x( Y* f1 P
    Thanks a lot
    ( ?# {9 C) `$ h. b) z& L
  • TA的每日心情
    开心
    5 天前
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2019-8-11 20:48:37 | 显示全部楼层
    按要求试了一下,没反应啊
  • TA的每日心情

    2019-2-16 21:57
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    发表于 2019-8-11 21:11:52 | 显示全部楼层
    可以分享一下源代码吗?
  • TA的每日心情
    开心
    2019-1-21 17:00
  • 签到天数: 376 天

    [LV.9]以坛为家II

     楼主| 发表于 2019-8-11 23:31:26 | 显示全部楼层
    999阿彌陀佛 发表于 2019-8-11 20:48
    7 J* u* j7 |/ r5 o按要求试了一下,没反应啊

    ( l) y" z- r7 V, i' F! X你不要弄太多单词进去,然后保存为txt时编码选utf-8无BOM(也叫utf-8无签名),再试试
  • TA的每日心情
    擦汗
    前天 16:05
  • 签到天数: 129 天

    [LV.7]常住居民III

    发表于 2019-8-12 08:16:56 | 显示全部楼层
    方法很特别!
  • TA的每日心情
    开心
    4 天前
  • 签到天数: 202 天

    [LV.7]常住居民III

    发表于 2019-8-12 09:06:31 | 显示全部楼层
    请问:之前Mdict Editor Tool等工具提取后的排序是按照字母顺序,并非input的顺序,不知道我们这个output.txt的顺序是?
  • TA的每日心情
    开心
    2019-1-21 17:00
  • 签到天数: 376 天

    [LV.9]以坛为家II

     楼主| 发表于 2019-8-12 09:36:24 来自手机 | 显示全部楼层
    VimVim 发表于 2019-8-12 09:06
    ( o. T( o# w3 t6 Q2 W% g4 j( ?* S请问:之前Mdict Editor Tool等工具提取后的排序是按照字母顺序,并非input的顺序,不知道我们这个output.t ...

    # ^8 P9 ]# e5 z3 ^$ B( P7 S! l: B输出的txt,是按照你的input.txt的先后,至于打包mdx后有没有再排序,因为用的是别人的写好的工具,我也没有研究

    点评

    太好了,正是需要这种排序!txt已能满足需求。  发表于 2019-8-12 14:56
  • TA的每日心情
    慵懒
    2 小时前
  • 签到天数: 66 天

    [LV.6]常住居民II

    发表于 2019-8-12 11:08:20 | 显示全部楼层
    老哥,源码能发出来学习一下吗?
  • TA的每日心情
    慵懒
    前天 13:19
  • 签到天数: 99 天

    [LV.6]常住居民II

    发表于 2019-8-12 15:49:51 | 显示全部楼层
    simonfire 发表于 2019-8-12 09:36# y5 A( \2 E* Q5 f0 w
    输出的txt,是按照你的input.txt的先后,至于打包mdx后有没有再排序,因为用的是别人的写好的工具,我也 ...
    " D* S& C* D1 e; u% d
    打包成 mdx 后,都是重新排序的,与原有 txt 顺序无关。
  • TA的每日心情
    奋斗
    2019-4-14 02:12
  • 签到天数: 93 天

    [LV.6]常住居民II

    发表于 2019-8-12 21:14:14 | 显示全部楼层
    本帖最后由 jonah_w 于 2019-8-12 21:15 编辑
    ! n# R' @3 v4 O. S$ U9 p+ t, a/ u! Y* R; E  C- o/ ~$ C
    如果要保证按input.txt里的词头先后的话,速度肯定会慢,不考虑前后或者按字母顺序的话(用哈希),速度应该会非常快(几万个词头,也就是几秒,根据以前经验猜的)。可以考虑下。
  • TA的每日心情
    慵懒
    前天 21:56
  • 签到天数: 136 天

    [LV.7]常住居民III

    发表于 2019-8-12 22:39:30 | 显示全部楼层
    开源一下,这样我可以看看为什么速度这么慢
  • TA的每日心情
    开心
    5 天前
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2019-8-13 07:50:36 | 显示全部楼层
    謝謝,單詞表保存為 編碼ANSI 就可以了。之前是utf-8,沒反應。
  • TA的每日心情
    开心
    2019-1-21 17:00
  • 签到天数: 376 天

    [LV.9]以坛为家II

     楼主| 发表于 2019-8-13 10:39:34 来自手机 | 显示全部楼层
    999阿彌陀佛 发表于 2019-8-13 07:50
    9 N9 m; u6 y3 h+ Z: _$ k- ~謝謝,單詞表保存為 編碼ANSI 就可以了。之前是utf-8,沒反應。

      n1 f' f9 k2 z; D) ~. H; Q你肯定用的是记事本了,弄这个你最好使用像notepad++或者emeditor这种编辑器。/ K2 I( n6 T; X$ |6 Y! {+ d
    不然你保存为ansi,英文没问题,中文就GG了,不过你要是不太懂,就凑合用吧
  • TA的每日心情
    开心
    5 天前
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2019-8-13 18:30:30 | 显示全部楼层
    謝謝。
      S6 e$ H3 X3 {2 F- M* h只是速度現在很慢,能不能改進一下?現在的詞典詞條都很多的。
  • TA的每日心情
    开心
    2018-8-8 03:13
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2019-8-14 03:07:32 | 显示全部楼层
    本帖最后由 喬治兄 于 2019-8-14 03:12 编辑
    - F" N2 @3 A7 n, @* ?; u
    simonfire 发表于 2019-8-12 09:36
    ! x5 b0 Y( C% O8 A* z4 b输出的txt,是按照你的input.txt的先后,至于打包mdx后有没有再排序,因为用的是别人的写好的工具,我也 ...
    7 J( b  O5 }# P0 g6 k' T( [/ {+ V

    1 W' |2 v4 |+ A# w. n) f哈哈, 還是@VimVim 兄問到了重點1 g$ x' U4 a. X4 z4 ?# c
    小弟也正需输出的txt 按 input.txt 的先后/ E+ a. g9 B* c9 g" X% K
    讚一個9 F# `2 Q( u  @- U( T* B
    本想學此招
    ( n0 V* D; m) B0 a$ x[教程] 用Emeditor提取子字典% D6 Q4 L( h1 n/ l: q
    https://www.pdawiki.com/forum/forum.php?mod=viewthread&tid=34351#lastpost" Z4 c' w/ C: s4 [& Y, ]1 Z$ r
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    顶部qrcode底部
    关注公众号送论坛充值码
    关注微信公众平台
    关注微信公众号 pdawiki,获取邀请码,看文抢积分,抽奖得浮云! Follow our Wechat official account "pdawiki", get invitation codes, and play the lottery to earn points (积分)!

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

    GMT+8, 2019-8-25 02:18 , Processed in 0.210614 second(s), 10 queries , MemCache On.

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

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