起初要做,是因为女朋友在寻找word批量转换pdf的工具,正好自己在学python,不如自己试试能不能写出来
本文记录了实施过程中遇到的问题、解决方案等内容


首先网上大部分教程是通过win32com这个模块来实现的,但这个模块要求windows系统,我使用的是mac,因此选择了另一个模块:docx2pdf

关于word2pdf的转换与批量转换

macOS下只能通过docx2pdf来实现 因为该模块需要调用word的功能,所以依赖于office的安装

可以在终端中直接进行转换,最简单的转换方式

  1. # 以下均为在终端的输入操作
  2. from docx2pdf import convert
  3. # 转换单个文件:word1.docx,需要提前cd进word1所在的目录
  4. convert word1.docx
  5. # 转换wordfiles文件夹下的多个docx文件
  6. convert wordfiles/

参考:

  • Mac版本可以批量
  • 尝试进行多文件转换:转换成功,有两个问题:
    • 虽然是自动运行,但程序会“显式”的操作,此时电脑也做不了别的;如何避免?
    • 每次word打开新文件,都需要“授予访问权限”;如何解决?
  • 尝试移出iCloud-成功进行单文件的转换
  • 激活后再尝试-失败,错误,猜测是存在icloud当中的的问题
  • 再尝试-失败,不知道是否是“未激活”导致的?
  • 安装office

关于打包,参考:

如何打包成exe?

  • 如何安装“227版本的pywin32”?-227版本也分为“适用不同平台的版本”,所有227版本集合见网页:
  • [ ] 在windows下尝试-windows无法安装“docx2pdf库”,因为基于pywin32的227版本

    如何打包成app?

  • 打包出现问题:app执行后在dock闪一下就消失

  • 打包又遇问题:“ImportError: cannot import name ‘convert’ from ‘docx2pdf’”-不知道什么原因,复制文件后解决了
  • 在自己电脑,写setup文件的过程中,出现错误:“zsh: command not found: py2applet”,已解决,参考:https://blog.csdn.net/ruiruiruiruirain/article/details/107324816 按形式解决,深层原因没有搞懂,待解决
  • 安装包-py2app

参考链接: