什么是 dominate?
dominate 是一个用于以编程方式创建和操作 HTML 文档的 Python 库。它允许你像写 Python 代码一样构建 HTML,无需手动拼接字符串。
安装 dominate
通过 pip 安装:
pip install dominate
基本用法示例
以下是一个简单的例子,生成一个包含标题和段落的 HTML 页面:
import dominate
from dominate.tags import *
doc = dominate.document(title='Hello World')
with doc.head:
link(rel='stylesheet', href='style.css')
with doc:
with div(id='header'):
h1('Welcome!')
p('This is a paragraph.', id='intro')
print(doc)
输出结果为标准的 HTML 字符串,可直接写入文件或返回给 Web 框架。
常用标签与属性
dominate.tags 模块提供了所有 HTML 标签作为函数。你可以通过关键字参数设置属性,例如:
img(src='logo.png', alt='Logo', width=200)
a('Click me', href='https://example.com', target='_blank')
上下文管理器(with 语句)
使用 with 语句可以自然地嵌套 HTML 元素,结构清晰:
with ul():
for item in ['Apple', 'Banana', 'Cherry']:
li(item)
适用场景
- 动态生成邮件模板
- 自动化报告生成
- 简化 Flask/Django 中的 HTML 构建逻辑
- 测试 HTML 输出结构