最近寫一個BootStrap頁面...因為功能需要所以決定一個頁面解決所有問題,然后用jQuery來動態(tài)顯示功能....然而這樣做的話頁面會相當(dāng)龐大,一堆隱藏模態(tài)窗口和功能div都堆在一起看起來挺難受的
然后想了下就用Python寫了個小腳本用來支持<include>標(biāo)簽,用處是合并外部html文件,來強(qiáng)行分文件編寫單個龐大的HTML頁面
用了下感覺挺好用的,分享給大家
使用方法:
HTML中使用<include src="">標(biāo)簽來導(dǎo)入其他HTML代碼。支持嵌套替換(如A頁面嵌套B頁面,B頁面嵌套C頁面)。但是請小心循環(huán)嵌套(A頁面嵌套B頁面,B頁面嵌套A頁面),會導(dǎo)致死循環(huán)
主頁面為默認(rèn)處理頁面為index.html,生成合并頁面為newhtml.html
具體代碼如下
import codecsimport webbrowserimport syscharset = "utf-8" #文件編碼#讀取text里的<include>標(biāo)簽及src屬性中的文件,替換原標(biāo)簽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標(biāo)簽 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>以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。
新聞熱點
疑難解答
圖片精選