0
掃描目錄樹併產生xml。我嘗試了很多東西,但失敗了。有什麼代碼在python中掃描目錄樹併產生xml
對於Ex XML文件結構。
<dir name="dir_A">
<dir name="dir_AA">
<file name="abc.doc"/>
</dir>
<dir name="dir_BA">
<dir name="dir_BAA">
<file name="abc.doc"/>
</dir>
<file name="abc.doc"/>
</dir>
</dir>
我的代碼,我嘗試,但它不是完整的。我在開發過程中刪除了一些代碼,我現在沒有,對不起。
import xml.etree.ElementTree as ET
import os
class XMLOperations:
def list_files(self, startpath):
parent = None
prevLevel = None
xmlRoot = ET.Element("root")
xmlRoot.set('xml','http://www.google.com')
xmlRoot.set('xmlns','http://www.w3.org/1999/xlink')
directory = ET.Element("directory")
elementFile = ET.Element("file")
for root, dirs, files in os.walk(startpath):
level = root.replace(startpath, '').count(os.sep)
current = os.path.basename(root)
try:
dir_name = root.split(startpath+"/")[1]
except:
continue
depth = dir_name.count(os.sep)
fList = dir_name.split(os.sep)
if level == 0:
ET.SubElement(xmlRoot, directory, name = current)
else:
for tags in fList:
ET.SubElement(xmlRoot, directory)
if depth > 3:
break
#with open("output.xml",'w') as file:
# file.write(xmlRoot)
ET.dump(xmlRoot)
謝謝。
使用LXML升圖書館,你可以添加你嘗試的代碼嗎? –
我認爲這個問題表達得很差,但內容有效。爲了防止進一步downvoting重命名爲掃描目錄樹,併產生xml – Pynchia
@VivekSable我有一些代碼,我在這裏分享。我不使用lxml。 –