Python将doc转换为docx

时间:2017-09-19 08:54:15

标签: python amazon-web-services

我正在尝试将doc文件转换为docx。我在网上找到了这个代码。

subprocess.call(['soffice', '--headless', '--convert-to', 'docx', filename])
document = docx.Document(path[:-4] + ".docx")
docText = ''.join([
    paragraph.text.encode('ascii', 'ignore') for paragraph in 
document.paragraphs

我在自己的机器上使用它完全正常,但我试图把这个用于AWS。它在那里不起作用。我收到一条错误,上面写着“没有这样的文件或目录”。

它可能是因为它在我的计算机上工作,但是当我把它放在AWS上时它没有。

1 个答案:

答案 0 :(得分:1)

您必须在使用此代码的计算机中安装LibreOffice,并且必须在运行此程序之前关闭LibreOffice的打开实例,否则它将以静默方式退出而不执行任何操作。 你也可以尝试

unoconv -d document --format=docx *.doc

但它也依赖于LibreOffice。它将通过LibreOffice转换文件。它不完美,有些格式会丢失,但它会将所有doc文件转换为docx