我想将结果输出到doc文件中。我已经在pdf中得到了结果 使用
pdf = pisa.pisaDocument(StringIO.StringIO(html.encode("UTF-8")), dest=result, link_callback=fetch_resources )
我想在python-docx中使用上面的替代代码。请提供任何链接,其中给出了python docx的详细示例。 但同样的文件在天秤座办公室开放。我不知道怎么做。 我用了
report_mail(request,result,email,message)
response = HttpResponse(result.getvalue(), content_type='application/vnd.openxmlformats-officedocument.wordprocessingml.document')
response['Content-Disposition'] = 'attachment; filename=file.docx'
return response
也将输出作为file.docx。但它没有在ms office professional 2010开放。 我收到错误"文件无法打开,因为内容细节存在问题: - 文件已损坏且无法打开"
和
content_type='application/vnd.openxmlformats-officedocument.wordprocessingml.document'
response['Content-Disposition'] = 'attachment; filename=file.doc'
将原始数据存入文件
%PDF-1.4
%“Œ‹ž ReportLab Generated PDF document http://www.reportlab.com
% 'BasicFonts': class PDFDictionary
1 0 obj
% The standard fonts dictionary
<< /F1 2 0 R
/F2 3 0 R >>
endobj
% 'F1': class PDFType1Font
2 0 obj
% Font Helvetica
<< /BaseFont /Helvetica
/Encoding /WinAnsiEncoding
/Name /F1
/Subtype /Type1
/Type /Font >>
endobj
请帮我解决这个问题。
答案 0 :(得分:0)
Pisa是一种将HTML转换为PDF的工具。它读取html源并提供pdf文件。这就是你得到的。到目前为止一切都很好。
将文件扩展名从.pdf
更改为.doc
或.docx
不会更改其内容。你很幸运LibreOffice能够打开pdf文件。 Microsoft Office不是。
使用docx
创建python-docx
与使用pisa
获取pdf不同。再次:pisa
将html转换为pdf,python-docx
不会将html转换为docx。这需要更多步骤。
根据python-docx文档,您需要使用Document
这样的对象:
from docx import Document
[...]
document = Document()
document.add_heading('Document Title', 0)
[...]
document.save('demo.docx')
您需要逐步向文档中添加内容。