📜  使用 Flask-Minify 在 Flask 中缩小 HTML

📅  最后修改于: 2022-05-13 01:55:13.898000             🧑  作者: Mango

使用 Flask-Minify 在 Flask 中缩小 HTML

Flask 提供 HTML 渲染作为输出,通常希望输出的 HTML 应该简洁并且也能达到目的。在本文中,我们将使用库 - Flask-Minify 显示 Flask 响应的输出路由的缩小。

缩小的优势

  • 网站加载速度更快,因为上传和下载的行更少。
  • 随着网络上传输的数据减少,带宽成本降低。
  • 使用前无需解压。
  • 随着网站加载速度更快,用户体验和搜索引擎优化也会得到改善。

安装

要安装此模块,请在终端中键入以下命令。

pip install Flask-Minify

函数: minify(self,app=None,html=True,js=True,cssless=True,fail_safe=True,bypass=[],passive=False,static=True,script_types=[])

参数:

  • app:要启动的 Flask 应用实例。
  • js:是否缩小 js。
  • cssless: 是否缩小css。
  • fail_safe:避免在缩小时引发错误。
  • 绕过:要绕过缩小的端点列表。
  • 被动:有选择地缩小路由
  • 静态:启用压缩静态文件 css、less 和 js。
  • script_types:限制js缩小的脚本类型列表。

分步实施

第 1 步:导入库并使用应用程序上下文初始化 Minify。



Python3
from flask import Flask
from flask_minify import minify
  
app = Flask(__name__)
  
# initializing minify for html, js and cssless
minify(app=app, html=True, js=True, cssless=True)


Python3
@app.route('/')
def sample_minify():
    return """














GeeksforGeeks | A computer science portal for geeks






"""


Python3
if __name__ == "__main__":
      app.run()


Python3
from flask import Flask
from flask_minify import minify, decorators
  
app = Flask(__name__)
  
# passive = True, just performs minification to required routes
minify(app=app, passive=True)
  
# minifies this route
@app.route('/')
@decorators.minify(html=True, js=True, cssless=True)
def sample_minify():
    return """














GeeksforGeeks | A computer science portal for geeks






"""
  
# doesn't minify this route
@app.route('/no_mini')
def no_minify():
    return """














GeeksforGeeks | A computer science portal for geeks






"""
  
  
if __name__ == "__main__":
      app.run()


步骤2:添加路由,输出带有缩小代码的HTML。

蟒蛇3

@app.route('/')
def sample_minify():
    return """














GeeksforGeeks | A computer science portal for geeks






"""

第 3 步:运行应用程序

蟒蛇3

if __name__ == "__main__":
      app.run()

输出 :

示例 2:对某些路由应用缩小

在这种情况下,我们可以根据要求仅对必需的路线进行缩小,而不是全部。这是通过在传递上下文时传递“passive=True”来完成的。

蟒蛇3

from flask import Flask
from flask_minify import minify, decorators
  
app = Flask(__name__)
  
# passive = True, just performs minification to required routes
minify(app=app, passive=True)
  
# minifies this route
@app.route('/')
@decorators.minify(html=True, js=True, cssless=True)
def sample_minify():
    return """














GeeksforGeeks | A computer science portal for geeks






"""
  
# doesn't minify this route
@app.route('/no_mini')
def no_minify():
    return """














GeeksforGeeks | A computer science portal for geeks






"""
  
  
if __name__ == "__main__":
      app.run()

输出 :