专栏首页工作笔记精华python 利用jinja2模板生成html代码实例

python 利用jinja2模板生成html代码实例

这篇文章主要介绍了python 利用jinja2模板生成html代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

from jinja2 import Environment, FileSystemLoader
import json
 
 
def generate_html(data):
   env = Environment(loader = FileSystemLoader( './' ))  # 加载模板
   template = env.get_template( '模板.html' )
   # template.stream(body).dump('result.html', 'utf-8')
 
   with open ( "result.html" , 'w' ) as fout:
 
     html_content = template.render(data = {})
     fout.write(html_content)  # 写入模板 生成html
 
if __name__ = = "__main__" :
   result = {}
   generate_html(result)
#### 脚本执行 添加进度信息ff = open('1.txt','w')
 
 
def open_file(file_name):
   try :
     with open (file_name, 'a+' )as f: # 例如打开一个大文件
       fsize = os.path.getsize(file_name)  # 先计算大文件大小
       line_list_size = 0
 
       for line_list in f: 
         line_list_size + = sys.getsizeof(line_list) # 计算处理文件大小
         done = int ( float (line_list_size) / fsize * 10 )  # 计算进度
         sys.stdout.write( "\r[%s%s] %d%%" % ( '█' * done * 2 , ' ' * ( 20 - done * 2 ), 10 * done))
         sys.stdout.flush() # 刷新到控制台
         
   except Exception, e:
     print e
     return '文件操作失败'
if __name__ = = "__main__" :
   file_name = '235'
   print '---- start ----'
   open_file(file_name)
   print '\n---- end ----'
 
 
 
TEMPLATE_ENVIRONMENT = Environment(loader=FileSystemLoader(os.path.join(PATH, 'templates')), autoescape=False, trim_blocks=False)


def render_template(template_filename, context):
    return TEMPLATE_ENVIRONMENT.get_template(template_filename).render(context)
 

with open(target, 'w') as f:
    html = render_template(tpl, context)
    f.write(html)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • mac下开启docker API远程调用 转

    docker run -d -v /var/run/docker.sock:/var/run/docker.sock -p 2376:2375 \

    stys35
  • java对象拷贝最完全解说 转

    java赋值是复制对象引用,如果我们想要得到一个对象的副本,使用赋值操作是无法达到目的的:

    stys35
  • JS之clientX,clientY,screenX,screenY,offsetX,offsetY区别测试

    首先需要知道clientX,clientY,screenX,screenY,offsetX,offsetY 是鼠标事件对象下的几个属性.

    stys35
  • Python文件处理

    在python里面我们必不可少的就是要与文件打交道,这个时候我们使用open方法就可以打开或者是创建文件了。可以读取文件内容,也可以写入内容。

    我被狗咬了
  • 知乎爬虫-指定问题采集全回答

    只需运行主程序html.py即可。书籍信息保存在read2.txt中  源代码保存已注释。

    十四君
  • python遍历文件

    py3study
  • PHP实现文件上传后台处理脚本

    本文实例为大家分享了PHP实现文件上传后台处理的具体代码,供大家参考,具体内容如下

    砸漏
  • python批量下载图片的三种方法

    win32com可以获得类似js里面的document对象,但貌似是只读的(文档都没找到)。

    流柯
  • 人类没法下了!DeepMind贝叶斯优化调参AlphaGo,自弈胜率大涨16.5%

    在AlphaGo的开发过程中,它的许多超参数都经过多次贝叶斯优化调整。这种自动调参过程使其棋力显著提高。在与李世乭的比赛之前,我们调整了最新的AlphaGo的参...

    新智元
  • 玩转字符串篇--Gradle+代码生成器=懒人必备

    张风捷特烈

扫码关注云+社区

领取腾讯云代金券