Luca Bravo
统计
文章总数 52篇
总字数 6.6万
上次更新 1天前
运营时长 2年6个月
分类
标签
AI Arch BF CLI CSS Fuwari Giscus GTK HEO JS KDE K签 Linux Lisp LLM Path Pypi Python RSS Vim VTB VUP Whl WP 上海 专业 主题 云朵 享乐 优化 伦理 便利店 俄国 光标 内耗 函数式 分析 创伤 创意 判断 前端 北京 参观 哲学 商业 国庆 壁纸 天津 姐妹 字典 安装 实用 对话 度假 开发环境 开源 归档 微风 心理 意义 技校 抚远 拥抱 推荐 插件 摄影 政策 故障排查 效果 散文 文件 文化 旅游 日本 显卡 样式 模糊 治愈 浏览器 浦东 浦西 热力图 特效 猫猫 玩具 环境 甘城 生态 病毒 直播 社会 社团 秋游 科幻 移民 系统 终端 经济 美化 美缝 耳机 脑操 自动驾驶 苏州 茅山 萌系 补档 解释器 设计 评论 话术 谷子 走路 轮子 辍学 迁移 运维 重构 随机 音频 颜文字 颜色 首都 麦金塔 鼠标
1621 字
8 分钟
使用 Python 制作属于自己的静态页面生成器
博客网站的结构很简单,大概只有三种页面类型:链接到文章和页面的主页、文章页面、独立页面。
如果要求不高,其中文章页面、独立页面可以合并成一个页面类型。因此最多只需要写 2 个 Python 脚本就够了。
创建主页文件.py
主页文件只有两个功能:显示博客名称、显示和链接文章或其它页面。
但是首先,必须要输入数据才能生成吧?因此需要一个字符串变量和一个列表变量,在里面填写数据:
# 数据输入
博客标题 = ''
文章列表 = [
''
]
然后就可以创建 index.html
文件了,方便生成页面:
# 数据输入
博客标题 = ''
文章列表 = [
''
]
# 创建文件
index = open('index.html', 'w', encoding='utf-8')
通常来说,HTML 头部的部分是可以一成不变的,因此只需要把一些字符用变量替代就可以了:
# 数据输入
博客标题 = ''
文章列表 = [
''
]
# 创建文件
index = open('index.html', 'w', encoding='utf-8')
# 生成头部部分
index.write(
f'''
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" />
<title>{博客标题}</title>
</head>
<body>
<h1>{博客标题}</h1>
<hr>
''')
然后就可以生成页面的主体,最简单的方法是使用 for
遍历文章列表,中间用再把一些字符用变量替代,中间用 <hr>
分割:
# 数据输入
博客标题 = ''
文章列表 = [
''
]
# 创建文件
index = open('index.html', 'w', encoding='utf-8')
# 生成头部部分
index.write(
f'''
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" />
<title>{博客标题}</title>
</head>
<body>
<h1>{博客标题}</h1>
<hr>
''')
# 生成文章列表
for text in 文章列表:
index.write(
f'''
<h2><a href="{text}.html">{text}</a></h2>
<hr>
''')
最后,再来一个华丽的收尾:
# 数据输入
博客标题 = ''
文章列表 = [
''
]
# 创建文件
index = open('index.html', 'w', encoding='utf-8')
# 生成头部部分
index.write(
f'''
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" />
<title>{博客标题}</title>
</head>
<body>
<h1>{博客标题}</h1>
<hr>
''')
# 生成文章列表
for text in 文章列表:
index.write(
f'''
<h2><a href="{text}.html">{text}</a></h2>
<hr>
''')
# 生成页尾部分
index.write(
f'''
</body>
</html>
''')
输入以下数据时,效果是这样的:
博客标题 = 'Pinpe 的博客'
文章列表 = [
'一个月的网站更新日志',
'配置对话式关于页面',
'【多图预警】国庆节我去哪了?'
]
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" />
<title>Pinpe 的博客</title>
</head>
<body>
<h1>Pinpe 的博客</h1>
<hr>
<h2><a href="一个月的网站更新日志.html">一个月的网站更新日志</a></h2>
<hr>
<h2><a href="配置对话式关于页面.html">配置对话式关于页面</a></h2>
<hr>
<h2><a href="【多图预警】国庆节我去哪了?.html">【多图预警】国庆节我去哪了?</a></h2>
<hr>
</body>
</html>
创建文章或页面文件.py
需要一个单行字符串变量和一个多行字符串变量:
# 数据输入
文章或页面标题 = ''
内容 = '''
'''
创建的文件名就是文章 / 页面标题:
# 数据输入
文章或页面标题 = ''
内容 = '''
'''
# 创建文件
page = open(f'{文章或页面标题}.html', 'w', encoding='utf-8')
然后更加简单了,只需要对变量替换就可以实现:
# 数据输入
文章或页面标题 = ''
内容 = '''
'''
# 创建文件
page = open(f'{文章或页面标题}.html', 'w', encoding='utf-8')
# 生成页面
page.write(
f'''
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" />
<title>{文章或页面标题}</title>
</head>
<body>
<h1>{文章或页面标题}</h1>
<hr>
{内容}
</body>
</html>
''')
输入以下数据时,效果是这样的:
文章或页面标题 = '外国中文研究史'
内容 = '''
早期官话的第一部系统著作,是医学博士雷慕沙在1822年以法语撰的《汉文启蒙》(Élémens de La Grammaire Chinoise),他对官话语法的理解远远超越18世纪的不成熟之作,而且是第一部摆脱了以拉丁语的语法概念硬套在汉语的汉语语法书,是世界对汉语研究的转捩点之作。稍早,18世纪有两部不成熟的著作:道明会会士瓦罗以西班牙语撰的《华语官话语法》(Arte de la Lengua Mandarina)主述南京官话的词类,惟语法的篇幅仅30页,1682年在福州府写成手抄本小量流传,1703年在广州印刷,是第一部流传于世的官话语法;然后有法国耶稣会会士马若瑟以拉丁语撰的《汉语札记》(Notitia Lingae Sinicae),大量梳理文言文和南京官话的词类用例,但未有系统总结语法规则,不足称为语法书,该书在1728年以手抄本小量流传。<br>
如果算上失传之作,西班牙道明会在16~17世纪菲律宾写成数十部已失传的官话语法及闽南语语法书。该系列有一本1620年的《漳州话语法》(Arte de la Lengua Chio Chiu)幸存,乃现存最早的汉语语法书。
'''
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" />
<title>外国中文研究史</title>
</head>
<body>
<h1>外国中文研究史</h1>
<hr>
早期官话的第一部系统著作,是医学博士雷慕沙在1822年以法语撰的《汉文启蒙》(Élémens de La Grammaire Chinoise),他对官话语法的理解远远超越18世纪的不成熟之作,而且是第一部摆脱了以拉丁语的语法概念硬套在汉语的汉语语法书,是世界对汉语研究的转捩点之作。稍早,18世纪有两部不成熟的著作:道明会会士瓦罗以西班牙语撰的《华语官话语法》(Arte de la Lengua Mandarina)主述南京官话的词类,惟语法的篇幅仅30页,1682年在福州府写成手抄本小量流传,1703年在广州印刷,是第一部流传于世的官话语法;然后有法国耶稣会会士马若瑟以拉丁语撰的《汉语札记》(Notitia Lingae Sinicae),大量梳理文言文和南京官话的词类用例,但未有系统总结语法规则,不足称为语法书,该书在1728年以手抄本小量流传。<br>
如果算上失传之作,西班牙道明会在16~17世纪菲律宾写成数十部已失传的官话语法及闽南语语法书。该系列有一本1620年的《漳州话语法》(Arte de la Lengua Chio Chiu)幸存,乃现存最早的汉语语法书。
</body>
</html>
使用 Python 制作属于自己的静态页面生成器
https://pinpe.top/posts/page-template/