2010-12-16 155 views
0

我已經搜索了很多關於此的幫助,但大多數有關XML和Python的信息都是關於如何讀取和解析文件,而不是如何編寫它們。我目前有一個腳本,它將文件夾的文件系統作爲XML文件輸出,但我希望這個文件包含可以在網上閱讀的HTML標籤。如何在系統文件夾中顯示XML文件

此外,我正在尋找XML信息的圖形文件夾樣式顯示。我已經看到這在javascript中解決,但我沒有任何JavaScript的經驗,所以這可能在Python中?

import os 
import sys 
from xml.sax.saxutils import quoteattr as xml_quoteattr 

dirname = sys.argv[1] 
a = open("output2.xml", "w") 

def DirAsLessXML(path): 
    result = '<dir name = %s>\n' % xml_quoteattr(os.path.basename(path)) 
    for item in os.listdir(path): 
     itempath = os.path.join(path, item) 
     if os.path.isdir(itempath): 
      result += '\n'.join(' ' + line for line in 
       DirAsLessXML(os.path.join(path, item)).split('\n')) 
     elif os.path.isfile(itempath): 
      result += ' <file name=%s />\n' % xml_quoteattr(item) 
    result += '</dir>' 
    return result 

if __name__ == '__main__': 

    a.write('<structure>\n' + DirAsLessXML(dirname)) 
+0

如果需要在Web瀏覽器中工作,則必須使用JavaScript。 – kindall 2010-12-16 22:29:21

回答

2

通常,通過構建字符串來直接在Python中編寫HTML代碼並不是一個好主意。如果在一個月左右查看您的代碼,您將無法瞭解您生成的HTML類型。我建議使用templatingengine

或者,當您從XML轉換爲XML時,XSLT(XML轉換語言)似乎是一個很好的解決方案。

關於JavaScript,如果您想要一個交互式文件夾視圖,您將需要它。但這並不影響如何生成HTML頁面。無論您使用什麼方法,只需將一個腳本包含標記添加到HTML標頭中,然後在額外的文件(當然包含的那個文件)中實現JavaScript部分。

相關問題