from jinja2 import Environment, FileSystemLoader
import StringIO
import pandas as pd
Template_Path = '/home/test/'
DF = [pd.DataFrame()]*5 # List of Dataframes
Header_Text = ['header']*5 # list of headers
env = Environment(loader=FileSystemLoader(Template_Path))
template = env.get_template('PDF_Temp.html') # name of your html template
Master_HTML = ''
for x in range(len(DF)):
buf = StringIO.StringIO()
DF_HTML = DF[x].to_html(buf)
template_vars = {"Header" : Header_Text[x] ,
"DF" : buf.getvalue()
}
# Create PDF
Master_HTML += template.render(template_vars)
FN = 'test.html'
with open(FN, "w") as f:
f.write(Master_HTML.encode('utf-8') )
您可以尝试以下两种方式:
来自^{} 的^{} :
或者用^{} :
第二个选项提供了在导出期间删除索引列(
to_html
)的选项,而不必做太多的HTML
调整;因此它可能更适合您的需要。我希望这证明是有用的。
我建议使用Jinja2进行方便的HTML格式化。只需创建一个word文档,添加两行{{Header}和您想要的任何背景颜色{{DF},添加一个分页符并将其保存为html。现在使用Jinja2渲染模板。下面是Jinja2的使用示例代码:
这是关于Jinja2的一个很好的教程: http://pbpython.com/pdf-reports.html
相关问题 更多 >
编程相关推荐