【问题标题】:Thoroughly cofused about using .doc APIs对使用 .doc API 感到非常困惑
【发布时间】:2017-07-24 19:21:05
【问题描述】:

首先我要说我的python知识是初级到中级水平,我最近在很长一段时间后又开始使用这门语言了。

目标:

今天早上,我遇到了一堆想要转换并连接成 PDF 文件的 word 文档,其中 2 个 .doc 文件创建了一个 PDF。 似乎是一项相当微不足道的任务,所以我想我会尝试学习如何在 python 中完成它。 连接 PDF 还不错,我找到了 PyPDF2 并设法编写了一个脚本来做到这一点。

但 7 小时后,在无数脚本依赖损坏后,我仍然找不到自动化 doc-pdf 转换的方法。

问题:

我找到的每个脚本:

  1. 使用python-docx(我的文档是word 2003 .docs
  2. 使用 unoconv 桥接器(我与 OpenOffice 一起安装,然后四处搜索文档但没有找到 - 因此我不知道如何从 python 脚本或 shell 调用。为此我看到了one example,但它一直在抛出错误)
  3. 使用 win32com 或 win32com.client 或 pywin32 等。 我遇到了很多问题 - 安装了这些但无法从代码中导入它(就像 here 发生的那样),现在我什至无法用 pip 找到它们。搜索它们的文档(它们是模块还是类?我不知道),除了它们连接到 ActivePython 之外,几乎没有发现任何我能理解的东西。 (这显然是具有更多功能的 Python 的超集?)。
  4. Uses comtypes,我安装了它,但由于某种原因无法使用/导入(也许我使用 pip 不知何故?)

我知道我的问题几乎没有重点,但老实说,现在我的大脑因信息超载而受煎熬。任何对新手的简化都会受到欢迎。

TL;DR:

假设不了解 COM 的知识,也没有任何外部框架的经验:

  1. 如何将 Word 2003 .doc 文件转换为 .pdf 文件?我在 Windows 10 64 位机器上运行 python3.5.1 32 位。
  2. 我在哪里可以了解有关从 python 访问其他软件 API 的更多信息?这些东西是否有重要的先决条件,例如了解操作系统如何在较低级别上工作?

谢谢!

【问题讨论】:

    标签: python python-3.x pdf doc unoconv


    【解决方案1】:

    根据我的经验,最好在 python 之外完成各种办公格式之间的转换。使用子进程模块,可以调用外部命令

    soffice --convert-to pdf file.doc  --headless
    

    其中 soffice 是 LibreOffice 附带的命令。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-03
      • 1970-01-01
      • 1970-01-01
      • 2021-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多