python-3.x 为什么我的word到JSON转换器总是返回相同的输出?[已关闭]

fnvucqvd  于 2023-02-20  发布在  Python
关注(0)|答案(1)|浏览(135)

这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
4天前关闭。
Improve this question

import aspose.words as aw
import os
import glob
import openpyxl
import json
import aspose.cells
from aspose.cells import License,Workbook,FileFormatType

workbook = Workbook("bookwithChart.xlsx")

os.chdir(os.path.join(r"C:\Users\13216\Downloads\pythontests"))

docx_files = glob.glob("*.docx")
for files in docx_files: 
        doc = aw.Document(files) 
        doc.save("document1.docx") 
        doc = aw.Document("document1.docx")
        doc.save("html_output.html", aw.SaveFormat.HTML)
        book = Workbook("html_output.html")
        book.save("word-to-json.json", FileFormatType.JSON)

我需要将一组WORD文档转换为JSON。它工作得很好。但是,当我更改路径和文档名称来测试其他文档时,输出没有链接。JSON文件返回的输出与初始测试文档中显示的输出相同。
我试着修改JSON和HTML文件的save命令,但没有成功。我假设程序正在存储第一个测试文档("document1.docx")的第一个输出。我试着多次输入不同的文档,但输出没有变化。

8xiog9wr

8xiog9wr1#

不需要在代码中打开/保存DOCX文档。而且,您将所有文档保存到同一个输出文件中,因此它在每次迭代时都会被覆盖。您可以如下修改代码:

import aspose.words as aw
import aspose.cells as ac
import os
import glob

os.chdir(os.path.join(r"C:\Temp"))

docx_files = glob.glob("*.docx")
i = 0
for files in docx_files: 
    doc = aw.Document(files) 
    doc.save("tmp.html", aw.SaveFormat.HTML)
    book = ac.Workbook("tmp.html")
    book.save("word-to-json_" + str(i) + ".json", ac.FileFormatType.JSON)
    i += 1

相关问题