Python编写简单的HTML页面合并脚本
Python  /  管理员 发布于 7年前   537
最近写一个BootStrap页面...因为功能需要所以决定一个页面解决所有问题,然后用jQuery来动态显示功能....然而这样做的话页面会相当庞大,一堆隐藏模态窗口和功能div都堆在一起看起来挺难受的
然后想了下就用Python写了个小脚本用来支持<include>标签,用处是合并外部html文件,来强行分文件编写单个庞大的HTML页面
用了下感觉挺好用的,分享给大家
使用方法:
HTML中使用<include src="https:/article/">标签来导入其他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="https:/article/,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>以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号
