![](/img/trans.png)
[英]How to generate an image from an HTML template in Python (to then print)
[英]Generate HTML from HTML template in python?
我想用JSP
或Jade
這樣的標簽設計自己的HTML模板,然后將數據從python傳遞給它,並使其生成完整的html頁面。
我不想像DOM
一樣在python端構造文檔。 僅數據進入頁面,頁面臨時決定數據的布局方式。
我不想使用HTTP提供結果頁面,僅生成HTML文件。
可能嗎?
UPDATE
我找到了Jinja2,但是我對模板的要求很奇怪。 例如,他們希望我與
env = Environment(
loader=PackageLoader('yourapplication', 'templates'),
autoescape=select_autoescape(['html', 'xml'])
)
雖然說包yourapplication
沒有找到。 如果我刪除loader
參數,它會在網上抱怨
template = env.get_template('mytemplate.html')
說
no loader for this environment specified
我可以只從磁盤讀取模板並用變量填充它,而無需額外的東西嗎?
只需使用FileSystemLoader
:
import os
import glob
from jinja2 import Environment, FileSystemLoader
# Create the jinja2 environment.
current_directory = os.path.dirname(os.path.abspath(__file__))
env = Environment(loader=FileSystemLoader(current_directory))
# Find all files with the j2 extension in the current directory
templates = glob.glob('*.j2')
def render_template(filename):
return env.get_template(filename).render(
foo='Hello',
bar='World'
)
for f in templates:
rendered_string = render_template(f)
print(rendered_string)
example.j2
:
<html>
<head></head>
<body>
<p><i>{{ foo }}</i></p>
<p><b>{{ bar }}</b></p>
</body>
</html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.