Python编写简单的HTML页面合并脚本
作者:pppploi8 发布时间:2022-08-13 09:13:07
标签:Python],HTML,页面合并
最近写一个BootStrap页面...因为功能需要所以决定一个页面解决所有问题,然后用jQuery来动态显示功能....然而这样做的话页面会相当庞大,一堆隐藏模态窗口和功能div都堆在一起看起来挺难受的
然后想了下就用Python写了个小脚本用来支持<include>标签,用处是合并外部html文件,来强行分文件编写单个庞大的HTML页面
用了下感觉挺好用的,分享给大家
使用方法:
HTML中使用<include src="">标签来导入其他HTML代码。支持嵌套替换(如A页面嵌套B页面,B页面嵌套C页面)。但是请小心循环嵌套(A页面嵌套B页面,B页面嵌套A页面),会导致死循环
主页面为默认处理页面为index.html,生成合并页面为newhtml.html
具体代码如下
import codecs
import webbrowser
import sys
charset = "utf-8" #文件编码
#读取text里的<include>标签及src属性中的文件,替换原标签
def replaceInclude (filename,text):
try:
posA = text.find("<include")
while posA!= -1:
posC = text.find(">",posA)
tag = text[posA:posC+1]
posA = text.find("src=",posA)
posA += 5
posB = text.find("\"",posA)
file = text[posA:posB]#获取src中的文件名
print ("正在处理:",file)
tmpFile = codecs.open(file,"r",charset)
tmpText = tmpFile.read()
tmpText = replaceInclude(file,tmpText)#递归处理文件嵌套后的include标签
text = text.replace(tag,tmpText)
tmpFile.close()
posA = text.find("<include")
return text;
except Exception as e:
print ("错误:文件",filename,"中的",file,"处理失败!错误信息:\n",e)
sys.exit(1)
readFile = codecs.open("index.html","r",charset)
writeFile = codecs.open("newhtml.html","w",charset)
try:
text = readFile.read()
text = replaceInclude("index.html",text)
writeFile.write(text)
webbrowser.open("newhtml.html")
finally:
readFile.close()
writeFile.close()</pre>
0
投稿
猜你喜欢
- 在document.form1.submit();后加document.body.innerHtml = "W
- PDO::commitPDO::commit提交一个事务(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)说
- 设计模式:迭代迭代是一种设计模式,解决有序便利序列的问题。通用的可迭代对象需要支持done和next方法。伪代码如下:while not i
- 本文实例讲述了Go语言生成随机数的方法。分享给大家供大家参考。具体实现方法如下:golang生成随机数可以使用math/rand包packa
- 本文实例为大家分享了python定时发送邮件的具体代码,供大家参考,具体内容如下全部代码如下:import timefrom datetim
- 刚刚登甲发来一个文章,看到只要一行代码,就可以把IE6弄死.<style>*{position:relative}&
- 基于很多原因,有不少朋友的空间不支持FSO,当大量的页面生成静态页面时,占用大量的空间,修改样式时,不方便,所以动态页面还是有动态页面的好处
- MatrixOne是一个新一代超融合异构数据库,致力于打造单一架构处理TP、AP、流计算等多种负载的极简大数据引擎。MatrixOne由Go
- 概念Slice切片是对底层数组Array的封装,在内存中的存储本质就是数组,体现为连续的内存块,Go语言中的数组定义之后,长度就已经固定了,
- 在 ASP(VBScript 为语言)中,Asc 函数的返回值小于 0 的,可以被判断为中文字符。Asc 函数返回与字符串的第一个字母对应的
- 一、前言相关知识来自《python算法设计与分析》。初级排序算法是指几种较为基础且容易理解的排序算法。初级排序算法包括插入排序、选择排序和冒
- 一直以来,Web 字体背着单调的恶名,因为想在网页上显示一种字体,该字体文件本身必须存在于用户的电脑中,由于这个限制,加上 Web 用户可能
- PL/SQL是ORACLE对标准数据库语言的扩展,ORACLE公司已经将PL/SQL整合到ORACLE 服务器和其他工具中了,近几年中更多的
- 显然,效果很实用。对于这个效果,我们并不解释如何去使用效果库,而是讲解如何创建类似的效果,并保持他的可用性,分离式(unobtrusive)
- 1.分析 我们在用 php 制作网站时,分类是很重要的,在分类下面又再分类这第二个分类称为次分类,而现在大多
- 代码如下:<title>雷锋|优酷-专辑 采集程序</title></head> &
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致
- 登录SYS创建临时表空间/*创建临时表空间 */create temporary tablespace 表空间名 t
- 只有mdf文件的数据库附加失败的修复 附加时报如下错误: 服务器: 消息 1813,级别 16,状态 2,行 1 未能打开新数据库 '
- “到底是什么将艺术和设计分开的?”这样一个话题听起来费解,长时间以来, 也已经被讨论过无数次。艺术家和设计师都是通过共通的知识和素养来创造视