[英]How to convert .xls(x) files into PDF in Python or NodeJS (without Windows)?
我正在使用 Lambda 函数在 AWS 中构建一个项目,我需要将一些 .xls(x) 文件转换为 pdf。 我发现这种功能总是附带Microsoft Office库,所以如果我想转换Office的文件,我需要在Windows中。 有什么方法可以在没有第三方供应商的情况下实现此功能(Python3.x 或 NodeJS)(在价格方面......)?
作为我工作路径的一部分,我尝试使用 Python Pandas 和 Python xlrd 获取信息,希望自己创建 pdf 文件,我也尝试使用一些 Node 和 Python 库(但都取决于 Windows)。 我也看到了一些服务的价格。
有什么建议吗?
我仍在寻求帮助,但我找到了一种方法可以部分帮助(这不是我的解决方案,但可以帮助某人)。
我正在使用库 xhtml2pdf 和 Pandas。 我使用 Pandas 获取 xls(x) 内容,然后将文件导出为 HTML,最后从中创建 PDF。
主要问题是结构,我丢失了布局、颜色、字体和所有漂亮的视图,但是我保留了单元格中的值。
from xhtml2pdf import pisa
import pandas as pd
xl = pd.ExcelFile("myExcelFile.xlsx")
df = xl.parse("sheet_name")
# Some cleaning
df.dropna(how="all") # If the row is completely NaN
df.dropna(how="all", axis="columns") # If the column is completely NaN
df.fillna("") # I delete the NaN values (just for beautify)
df.to_html('htmlFile.html', border=0)
with open("htmlFile.html", "r") as htmlFile:
with open("pdfFile.pdf", "w+b") as resultFile:
pisaStatus = pisa.CreatePDF(htmlFile, dest=resultFile)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.