2020春节,疫期赋闲在家规避风险,不能外出。简单撸了小脚本,分享出来,希望能有所用。
Github 地址: https://github.com/valuex/GoldenDict2Anki/blob/master/README.md
功能:
动将GoldenDict中查询的单词及释义保存到Anki,便于后续阅读学习
用法:
- 准备
- Anki & AnkiConnect link
- GoldenDict link
- a local dictionary (*.mdx) file
2. Anki中的设置
- 安装AnkiConnect
- 创建"NewWords"的deck
3 GoldenDict中的设置
3.1 通过添加【程序】,实现将GD2Anki加到GoldenDict中。具体方法为:点击 [Edit]--[Dictionaries] --[Source]--[Programs]--[Add], 进行附图中的配置并点击[apply]:
- Type: HTML
- Name: set as your wish, Let's call it **Ak** here
- Command Line: "**YourLocalPah**GD2Anki.exe" %GDWORD%
- Icon: Any local icon file
3.2 将Ak移到词典列表的最下面(原因:AnkiConnect写入较慢,需要2~3秒钟,避免影响查询体验,建议放到最下面),方法:选中Ak并拖拽到词典列表最下端
4. GD2Anki 中的设置
在Config.ini文件中指定需要查询的词典文件(mdx)路径。在GoldenDict中查询单词{word}在该词典{mdx dictionary}的释义后,就会自动将该词典中的释义保存到Anki中。
5. 已知问题:
出现“sqlite3.OperationalError: no such table”错误,类似:
“Traceback (most recent call last):
File "GD2Anki.py", line 70, in <module>
File "mdict_query.py", line 282, in mdx_lookup
File "mdict_query.py", line 267, in lookup_indexes
sqlite3.OperationalError: no such table: MDX_INDEX
[1780] Failed to execute script GD2Anki”
原因: 引用的mdict_query.py问题,没能直接根据词典文件(*.mdx)生成有效的索引数据库(*.mdb.db )文件,在mdx文件目录下,得到的*.mdb.db )文件大小为0 Kb。
解决方案:
使用老黄的mdxserver 生成有效的索引数据库(*.mdb.db )文件。具体方法:双击mdx_server.exe,选中对应的mdx文件,提示
servering HTTP on port 8000...
就表明索引数据库成功生成了,退出mdx_server.exe即可。
如下为下载地址:
链接:https://pan.baidu.com/s/1jJG5LPW 密码:h6kr