首页 > 其他分享 >Jinja2模块生成html

Jinja2模块生成html

时间:2024-10-09 11:49:11浏览次数:9  
标签:body 模块 python item html Jinja2 result template

1、html模板

<!DOCTYPE html>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<html align='left'>
<h1>巡检报告</h1>
<body>
<h2>报告综述</h2>
<p>巡检地点 : 机房  开始时间 : {{ start_time }}  结束时间 : {{ stop_time }}  </p>
<p>检测结果 : ***  其它信息:***</p>
<h2>详细信息</h2>
<table border="1" width="40%" cellspacing='0' cellpadding='0' align='left'>
    <tr>
        <th>机柜号</th>
        <th>检测时间</th>
        <th>检测结果</th>
        <th>详细信息</th>
        <th>图片路径</th>
    </tr>
    {% for item in body %}
        <tr align='center'>
            <td>{{ item.cabID }}</td>
            <td>{{ item.shijian }}</td>
            <td>{{ item.final_result }}</td>
            <td>{{ item.info }}</td>
        </tr>
    {% endfor %}
</table>
</body>
</html>

2、python代码

from jinja2 import Environment, FileSystemLoader


def generate_html(body, starttime, stoptime):
    # 设置模板文件夹路径
    template_folder = "./"
    # 创建Jinja2环境
    env = Environment(loader=FileSystemLoader(template_folder))
    template = env.get_template('template.html')
    with open("result.html", 'w+') as f:
        html_content = template.render(start_time=starttime,
                                       stop_time=stoptime,
                                       body=body)
    print(html_content)
    f.write(html_content)


if __name__ == "__main__":
    body = []
    result = {'cabID': 1, 'shijian': 2019, 'final_result': "正常", 'info': "无"}
    body.append(result)
    generate_html(body, 2019, 2019)

参考链接:
      https://docs.jinkan.org/docs/jinja2/templates.html#variables           # Python之jinja2模板引擎生成HTML
           # jinja自动补全
           # python可视化库streamlit
      https://www.yii666.com/blog/428589.html      # python可视化库streamlit
      https://docs.streamlit.io/library/get-started/main-concepts      # streamlit库官方文档
      https://docs.python.org/zh-cn/3/library/webbrowser.html    # python webbrowser模块



标签:body,模块,python,item,html,Jinja2,result,template
From: https://blog.51cto.com/xwupiaomiao/12197907

相关文章

  • 基于Echarts+HTML5可视化数据大屏展示-大数据可视化通用版
    博主主页:猫头鹰源码博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作​主要内容:毕业设计(Javaweb项目|小程序|Python|HTML|数据可视化|SSM|SpringBoot|Vue|Jsp|PHP......
  • python爬虫 - 进阶requests模块
      ......
  • Deformable DETR改进|爆改模型|涨点|在骨干网络和可变形编码器间加入YOLOv10的PSA和SC
    一、文本介绍本文修改的模型是Deformable-DETR,在骨干网络和可变形编码器之间加入YOLOv10的PSA和SCDown模块。其中PSA是YOLOv10提出的一种高效的自注意力模块,为了避免注意力带来的巨额开销,本文将PSA应用于可变形编码器输入的最高层级特征图。SCConv是一种空间和通道解耦的卷积......
  • ansible中为什么不都是用shell模块写task,而是创建出一个一个的模块
    ansible的shell模块的功能非常强大,它甚至可以代替ansible的所有模块,比如像unarchive命令,在shell中可以分解为。通过scp命令传送包到远程,再通过tar命令对文件进行解压,再比如user模块可以直接在shell模块中调用useradd命令和usermod命令进行用户的管理,那么为什么还会有其他模......
  • 在vscode开发平台中编写HTML的基础快门键以及安装插件
    1、HTML5是HTML的第五次重大修改;2、相关快门键使用如下:   (1)放大缩小视图:放大:Ctrl和+;缩小:Ctrl和-;   (2)向上复制一行:alt+shift+......
  • IIS CORS 模块配置
    一、CORS配置<?xmlversion="1.0"encoding="UTF-8"?><configuration><system.webServer><corsenabled="true"failUnlistedOrigins="true"><addorigin="*"/>......
  • 库卡机器人KR3R540电源模块常见故障维修解决方法
    库卡机器人KR3R540电源模块的常见故障及维修解决方法包括:电源模块无法正常启动:应检查电源模块的电源连接是否正常,以及电源开关是否开启。如果电源连接正常,但驱动器仍然无法启动,可以尝试使用万用表检查驱动器的电源电压是否在正常范围内。如果电源电压过低或过高,都可能导致驱动器......
  • 17级模块化多电平变流器(MMC)研究(Simulink仿真实现)
    ......
  • 前端 - HTML基础一看就会
    HTML(超文本标记语言)是构建网页的基本语言,以下是一些常用功能及其使用注意事项和技巧:常用功能1.基础结构:•<!DOCTYPEhtml>:声明文档类型。•<html>:整个HTML文档的根元素。•<head>:包含文档的元数据,如标题、样式和脚本。•<body>:文档的主体,包含实际显示的内容。2.文本格式化:•<h......
  • 基于VITA57.1标准的8路SFP+光纤通道数据传输FMC子卡模块
     板卡概述FMC213是我司自主研制的一块基于FMC标准的8路万兆光纤子卡模块。该板卡符合VITA57.1标准,该板卡可以作为一个理想的IO模块耦合至FPGA前端,8路SFP+的高速串行信号直接连接至FMC(HPC)接口的高速串行总线上,与FPGA内部的万兆位级收发器(MGT)互联,SFP+模块支持业界标准的小型可插......