File Converter - Convert & compress everything in 2 clicks!
File Converter is a very simple tool which allows you to convert and compress one or several file(s) using the context menu in windows explorer.
文件转换器(File Converter)是我非常喜欢的一个工具,它可以在Windows资源管理器中添加一个右键菜单,可以将文件转换为其他格式。比如,我经常将JPG/PNG的图片转成 WebP 格式,这样可以减少图片的大小,提高网页的加载速度。
同样,我也经常将Word文档转成txt文件,这样可以很方便的检索文档内容。
但是,File Converter 并不支持将Word文档转成txt文件。因此,我写了一个 Python 脚本,临时将Word文档转成txt文件。希望对你有用。
word 格式
微软的Word文档有两种格式:
-
.doc:这是Microsoft Word的旧版文件格式,用于Microsoft Office 97-2003。它是二进制文件格式,包含了文档的所有元素(如文本、图像、表格等)和格式。
-
.docx:这是Microsoft Word 2007及以后版本的默认文件格式。它是基于XML的文件格式,比.doc文件更加紧凑、更有效率。.docx文件实际上是一个压缩文件,包含了多个目录和XML文件,这些文件描述了文档的结构和内容。
.docx文件比.doc文件有更好的数据恢复能力,因为它们是由多个组件组成的,如果一个组件损坏,其他组件可能仍然完好。此外,.docx文件通常比.doc文件小,因为它们使用了ZIP压缩。
然而,.doc文件在旧版的Word软件中有更好的兼容性。如果你需要在没有安装最新版Microsoft Word的计算机上打开文件,可能需要使用.doc格式。
pypandoc
Pandoc是使用Haskell语言编写的一款跨平台、自由开源及命令行界面的标记语言转换工具,可实现不同标记语言间的格式转换,堪称该领域中的“瑞士军刀”。
pypandoc
是 Python
的一个库,可以用来调用 pandoc
命令行工具,将文件转换成其他格式。
安装
在安装 pypandoc
之前,需要先安装 pandoc
命令行工具。
这个 Pandoc
安装包还是挺大的,20~30MB,谁让它是“瑞士军刀”呢。
安装完 Pandoc
之后,就可以安装 pypandoc
了。
|
|
docx 转 txt
一行代码就可以将 docx 文件转成 txt 文件。
|
|
doc 转 docx
前面说过,word文档有两种格式,.doc 和 .docx。Pandoc 只支持 .docx 格式,不支持 .doc 格式。
Feature request: support .doc (old MS Word) format · Issue #5809 · jgm/pandoc
Pandoc 的作者说,支持 .doc 格式太麻烦了,It would be a ton of work。而且,.doc 格式转成 .docx 格式,是一件很容易的事情,只需要打开 .doc 文件,然后另存为 .docx 文件即可。
顺着这个思路,我们可以先将 .doc 文件转成 .docx 文件。这里,我们使用 win32com
模块来操作 Microsoft Word。
pywin32 是一个 Python 库,它提供了一些用于与 Windows 操作系统进行交互的工具和模块。这个库可以让你在 Python 程序中调用 Windows API,进行一些如操作文件、处理 Windows 事件、操作注册表等任务。例如,你可以使用 pywin32 来创建和操作 COM 对象,这在自动化 Office 应用程序(如 Word 或 Excel)时非常有用。
|
|
转换代码如下:
|
|
完整代码
|
|