MdxScraper:从MDX字典提取内容并输出为PDF、HTML或JPG

经常需要将特定词条的查询结果批量导出并打印,特对 MdxConverter 做了改造加强。

下载:

页面右侧有 Releases 可以下载:GitHub - VimWei/MdxScraper: Extract specific words from an MDX dictionary and generate HTML, PDF, or JPG files with ease.

改进之处:

  1. 提升词典兼容性:
    • 内置并升级mdict-query,支持多mdd的词典。
    • 兼容有或无CSS文件的词典。
    • 兼容html中img标签的多种写法。
    • 兼容支持png、jpg、jpeg、gif等常见图片格式。
    • 支持同一个页面多次重复引用同一图片的情形,如读音图标等。
  2. 提升跨平台兼容性:
    • 文件路径名,兼容跨平台的多种的写法。
    • wkhtmltopdf安装目录,兼容跨平台的多种情形。
  3. 重构程序,更加便捷、易用、强健和友好:
    • 采用配置文件方式,而非命令行参数,配合conda可以一键输出,更便捷。
    • 丰富配置选项,包括输入输出文件、词典文件、PDF排版、CSS等,更强大。
    • 输出信息增加程序状态、查询统计、输出地址、耗时等信息,体验更友好。
    • 备份原始词汇,并与输出文件放在一起,方便归档调阅,数据安全有保障。
    • 增加时间戳到输出文件名,方便归档查阅所有输出文件,文件管理更方便。
10 个赞

多mdd的支持,其实是在mdict-query.py文件里,需要从头理清原作者的思路。建议还是直接合并mdd更方便。

1 个赞

Update:Release MdxScraper v1.1 · VimWei/MdxScraper · GitHub

  1. Enhancing Compatibility for Windows, Linux, and Mac.
  2. Implement ‘utf-8’ encoding for file handling to enhance compatibility.
4 个赞

正在学习 Python, 顺手把 mdict-query 改为支持多 mdd 查询了。
以下是测试代码:

def multi_mdd_test():
    mdx_name = '說文解字.mdx'
    mdx_name = Path(mdx_name)
    dictionary = mdict_query.IndexBuilder(mdx_name)
    css_key = dictionary.get_mdd_keys('\C0001*.png')[0]
    css = dictionary.mdd_lookup(css_key)[0]
    print(css_key)
    print(css)

改好的文件:
mdict_query.zip (3.5 KB)

3 个赞

感谢升级重大特性!我基于此发布了新版本 v2.0

1 个赞
  • 重构程序,全面提升体验,升级到 v3.4

    • 采用配置文件方式,而非命令行参数,配合conda可以一键输出,更便捷。
    • 丰富配置选项,包括输入输出文件、词典文件、PDF排版、CSS等,更强大。
    • 输出信息增加程序状态、查询统计、输出地址、耗时等信息,体验更友好。
    • 备份原始词汇,并与输出文件放在一起,方便归档调阅,数据安全有保障。
    • 增加时间戳到输出文件名,方便归档查阅所有输出文件,文件管理更方便。

4 个赞