首页 > 编程 > Python > 正文

Python编写简单的HTML页面合并脚本

2019-11-25 16:39:07
字体:
来源:转载
供稿:网友

最近写一个BootStrap页面...因为功能需要所以决定一个页面解决所有问题,然后用jQuery来动态显示功能....然而这样做的话页面会相当庞大,一堆隐藏模态窗口和功能div都堆在一起看起来挺难受的 

然后想了下就用Python写了个小脚本用来支持<include>标签,用处是合并外部html文件,来强行分文件编写单个庞大的HTML页面 

用了下感觉挺好用的,分享给大家 

使用方法: 

HTML中使用<include src="">标签来导入其他HTML代码。支持嵌套替换(如A页面嵌套B页面,B页面嵌套C页面)。但是请小心循环嵌套(A页面嵌套B页面,B页面嵌套A页面),会导致死循环
主页面为默认处理页面为index.html,生成合并页面为newhtml.html
具体代码如下 

import codecsimport webbrowserimport syscharset = "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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表