如何给FastWordQuery写扩展插件以支持其他mdx词典
本帖最后由 那一种想念 于 2020-4-6 11:07 编辑FastWordQuery(以下简称fwq)是Anki2.1以后的版本中非常不错的工具,可以极大简化批量建卡的过程,但现在网上能找到的被fwq支持的mdx词典只有朗文,而且是全英的朗文,用起来不方便,所以就自己写了一个扩展插件。在此把教程写出来,以便一起学习,以下均在win10、anki2.1.21上正常使用。
论坛的编辑器写起来好麻烦,我做成了pdf,截了图在这里可以看,也可以下载pdf看。
pdf下载地址:https://pan.baidu.com/s/1Eft29mx76MOYDsJG-cJ2Fg ,**** Hidden Message *****
文章中工具下载地址也放在这里:
mdx_server:https://pan.baidu.com/s/1h0QmBL8e3cxWUXOpDx6x0A,**** Hidden Message *****
可以用cmd在该目录下运行命令mdx_server.py -fn -mp 8000来运行mdx服务器,然后浏览器输入localhost:8000/test,如果显示词典内容说明运行成功。
我修改过的fwq的工具,里面有两个示例可以参考:https://pan.baidu.com/s/1PDO2BQBsmgWj7Q7Jbj4LCQ,**** Hidden Message *****
顺便问一下最开始上传的图片不能显示,但我找不到地方删除怎么办。。。
https://i.loli.net/2020/04/05/e2ZCUsn85O9fQLv.jpg
https://i.loli.net/2020/04/05/KfTk3rcU5SoxLQM.jpg
https://i.loli.net/2020/04/05/nwedfvW6o3tiaJj.jpg
https://i.loli.net/2020/04/05/fnRPlFMbNw8KUas.jpg上图的两个find,一个是find,一个是find_all,写法是一样的,返回值不同,具体看例子里面就可以看到区别。
https://i.loli.net/2020/04/05/WzPa9tQE6S2rhON.jpg
本帖最后由 bdqq 于 2020-5-5 00:38 编辑
请求fast wq 可以支持的 英文 朗文6 地址,我用windows10, anki ,安装了
https://ankiweb.net/shared/info/1807206748
https://s1.ax1x.com/2020/05/05/YPBnCd.png
我的anki版本是2.1.22
https://s1.ax1x.com/2020/05/05/YPBu8A.png"
我在网上下载了一个朗文6,其中有这样5个文件
entry.js 1,206
L6mp3.mdd1,297,932,816
L6mp3.mdx 124,057,083
LDOCE6.css 12,642
拷贝wquery目录和wordquery.py文件到addon目录里.zip 90,860
我可以用mdx-server 本地浏览,说明词典文件未损坏
我也修改了LDOCE6.py 中词典文件地址
...
DICT_PATH = u'' # u'E:\\BaiduYunDownload\\mdx\\L6mp3.mdx'
...但在Faswq- options 界面中下拉列表框中,没有 mdx-ldoce6 条目
我也试着把那个压缩包打开,放置文件与目录在anki中手动添加addon 但启动出错
现在我fastwq中朗文6无分项,只 有default 一项。请问我该如何做?是不是我的词典文件不对?
C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\libs\mdict\mdict_query.py我也试过删除上面文件12行的 #号.结果是出错
错误 有一个错误发生了.请在按住shift键的同时启动Anki,这样可以临时的忽略掉你已经安装的插件。 如果仅仅是因为插件引起的问题,请选择工具>插件菜单项来将出错的的插件设置成失效,然后重启Anki,重复以上的步骤直到你发现了具体是哪个插件引起的问题。 当你已经发现是因为插件引起的问题,请在我们的支持网站上 add-ons section 上报告问题。 调试信息Anki 2.1.22 (0ecc189a) Python 3.8.0 Qt 5.14.1 PyQt 5.14.1
Platform: Windows 10
Flags: frz=True ao=True sv=1
Add-ons, last update check: 2020-05-01 11:26:58
unexpected indent (mdict_query.py, line 15)
Traceback (most recent call last):
File "aqt\main.py", line 248, in onOpenProfile
File "aqt\main.py", line 370, in loadProfile
File "aqt\gui_hooks.py", line 1281, in __call__
File "lib\site-packages\anki\hooks.py", line 611, in runHook
File "C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\__init__.py", line 37, in start_here
from . import common as fastwq
File "C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\common.py", line 29, in <module>
from .gui import show_about_dialog, show_options# , check_updates
File "C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\gui\__init__.py", line 3, in <module>
from .common import *
File "C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\gui\common.py", line 28, in <module>
from ..service import service_manager, service_pool
File "C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\service\__init__.py", line 20, in <module>
from .manager import ServiceManager
File "C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\service\manager.py", line 24, in <module>
from .base import LocalService, MdxService, StardictService, WebService, service_wrap
File "C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\service\base.py", line 44, in <module>
from ..libs import MdxBuilder, StardictBuilder
File "C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\libs\__init__.py", line 1, in <module>
from .mdict import IndexBuilder as MdxBuilder
File "C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\libs\mdict\__init__.py", line 1, in <module>
from .mdict_query import IndexBuilder
File "C:\Users\admin\AppData\Roaming\Anki2\addons21\1807206748\libs\mdict\mdict_query.py", line 15
下面这个是否有误?好像一模一样。
#这个命令用来搜索符合设置值的第一个标签:
result=prase_obj.find("标签名",id="id值",class_="标签类名",attrs={"特殊属性名":"特殊属性值"})
#这个命令用来搜索符合设置值的所有标签,设置与上一致,只有返回值不同:
result=prase_obj.find("标签名",id="id值",class_="标签类名",attrs={"特殊属性名":"特殊属性值"}) 谢谢大佬 学到了,感谢分享 好贴留名! 谢谢教程超级好 也可以把这些图片打包一下。。一直加载不出来。。 这个世界已经背懂计算机编程的人占领了,我们只有做牛做马的份…… youyoulu 发表于 2020-4-5 11:48
也可以把这些图片打包一下。。一直加载不出来。。
图片我是真没办法,折腾图片就将近40分钟,一会这个不显示,一会那个不显示,我想想办法 那一种想念 发表于 2020-4-5 13:12
图片我是真没办法,折腾图片就将近40分钟,一会这个不显示,一会那个不显示,我想想办法 ...
嗯。。就是把图片打包放到百度网盘看看~ 那一种想念 发表于 2020-4-5 13:12
图片我是真没办法,折腾图片就将近40分钟,一会这个不显示,一会那个不显示,我想想办法 ...
图片可以放到sm.ms然后引用外链 感谢分享经验,之前我都是先将词典拆开,然后使用FWQ。 感谢作者分享 好东西,学习学习 VimVim 发表于 2020-4-5 23:09
下面这个是否有误?好像一模一样。
#这个命令用来搜索符合设置值的第一个标签:
对,一个是find_all,两者用法是一样的,只是返回值不一样。 感谢分享!解决了困扰我很久的问题 学习学习 学习一下,看看。谢谢。 看看,不知道难不难。学习一下。 感谢楼主分享 谢谢分享 非常感谢楼主,非常需要 感谢楼主分享 哇,这个真心厉害。正需要这个呢。
感谢楼主分享,,,期待成品{:11_380:} 回复支持楼主