from docx2pdf import convert
import pythoncom
#flask rest api
@app.route('/api_v1/get_pdf/',methods=['GET'])
def get_pdf():
if threading.currentThread ().getName () != 'MainThread':
pythoncom.CoInitialize ()
convert(in_word,out_pdf )在python中,我使用docx2pdf将docx文件转换为pdf,我的脚本需要在windows启动时执行(无需登录到windows )。在这种模式下,脚本在转换为pdf 'NoneType' object has no attribute 'SaveAs'时会引发错误。我不知道问题出在哪里,但我认为这是因为有些服务在登录到windows之前不工作,但是如果我在登录到windows后运行脚本,则工作正常。那么,在登录到windows之前,如何使脚本工作呢?
回溯:
'NoneType' object has no attribute 'SaveAs'
Traceback (most recent call last):
File "D:\xxxx\main.py", line 746, in get_pdf
convert(in_word,out_pdf )
File "C:\Python38\lib\site-packages\docx2pdf\__init__.py", line 106, in convert
return windows(paths, keep_active)
File "C:\Python38\lib\site-packages\docx2pdf\__init__.py", line 33, in windows
doc.SaveAs(str(pdf_filepath), FileFormat=wdFormatPDF)
AttributeError: 'NoneType' object has no attribute 'SaveAs'发布于 2021-02-26 07:12:47
docx2pdf通过运行Microsoft应用程序来完成转换。如果没有用户登录,Word就不能启动,即使它不会显示UI。您必须找到另一个不使用Word的docx转换器。有几种选择,包括pandoc。
https://stackoverflow.com/questions/66381235
复制相似问题