簡體   English   中英

從文件夾到列表的xml文件

[英]xml files from folder into list

我是編程方面的新手,這是我第一次使用xml,但是對於我正在使用Blogs數據集進行性別分類項目。 我有一個由xml文件組成的文件夾。 現在我需要在那里列出文件的名稱。 然后我應該能夠通過循環遍歷列表並打開包含XML的每個文件並從中獲取我想要的內容(例如Text和class),然后將其存儲在另一個變量中,例如將其添加到列表或字典中。

我嘗試了一些東西,但這是不對的,我有點卡住了。 有人能幫我嗎? 這是我迄今為止的wat:

path ='\\Users\\name\\directory\\folder'
dir = os.listdir( path )
def select_files_in_folder(dir, ext):
    for filename in os.listdir(path):
        fullname= os.path.join(path, filename)
        tree = ET.parse(fullname)
    for elem in doc.findall('gender'):
        print(elem.get('gender'), elem.text)

如果要構建給定目錄中所有xml文件的列表,可以執行以下操作

def get_xml_files(path):
    xml_list = []
    for filename in os.listdir(path):
        if filename.endswith(".xml"):
            xml_list.append(os.path.join(path, filename))
    return xml_list

請記住,這不是通過文件夾的遞歸,它只是假設xml文件以.xml結束。

編輯:

解析xml很大程度上取決於您將使用的庫。 從你的代碼中我猜你正在使用xml.etree.ElementTree(請記住,這個lib對於惡意構造的數據是不安全的)。

def get_xml_data(list):
    data = []
    for filename in list :
        root = ET.parse(filename)
        data = [ text for text in root.findall("whatever you want to get") ]
    return data

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM