这是我的代码,目前失败
import os
import pypandoc
source_dir = 'source'
result_dir = 'result'
for file in os.listdir(source_dir):
output_files1 = []
source_file = source_dir + '/'+file
output_file = result_dir + '/'+file.replace('.dotx','.html').replace('.ott','.html')
output = pypandoc.convert_file(source_file, 'html', outputfile=output_file)
我试图将DOTX文件掩盖到HTML文件,但是我收到以下错误:
RuntimeError: Invalid input format! Got "dotx" but expected one of
these: commonmark, creole, docbook, docx, epub, fb2, gfm, haddock,
html, jats, json, latex, markdown, markdown_github, markdown_mmd,
markdown_phpextra, markdown_strict, mediawiki, muse, native, odt, opml,
org, rst, t2t, textile, tikiwiki, twiki, vimwiki
虽然Pandoc支持.docx
,但不幸的是,它看起来不像Pandoc在其支持格式列表中支持.dotx
文件
幸运的是,由于.docx
和.dotx
几乎相同,因此您可以简单地将文件扩展名更改为.docx
,而Pandoc将能够支持它。有关更多上下文,请参见此问题:https://superuser.com/questions/1285415/difference-betweew-documents-with-docx-and-docx-and-dotx-filename-extensions
这是您现有循环中添加了一些逻辑,以帮助将任何.dotx
重命名为.docx
文件:
import os
import pypandoc
source_dir = 'source'
result_dir = 'result'
for file in os.listdir(source_dir):
if file.endswith('.dotx'):
filename = os.path.splitext(file)[0]
os.rename(file, filename + '.docx')
file = filename + '.dotx'
output_files1 = []
source_file = source_dir + '/'+file
output_file = result_dir + '/'+file.replace('.dotx','.html').replace('.ott','.html')
output = pypandoc.convert_file(source_file, 'html', outputfile=output_file)
希望这会有所帮助!如果您有任何疑问,请告诉我。