1. 程式人生 > >Python3提取xml檔案中的內容

Python3提取xml檔案中的內容

import  xml.dom.minidom

def find_child(Par_nodes, mystr):
    for child_node in Par_nodes:
        if(len(child_node.childNodes) > 0):
            mystr = find_child(child_node.childNodes, mystr)
        elif(child_node.nodeValue != None):
            mystr += child_node.data.replace('\n', ''
) return mystr if __name__ == '__main__': dom1 = xml.dom.minidom.parse('2.XML') #開啟xml檔案 root = dom1.documentElement #得到文件元素物件 app_nums = root.getElementsByTagName('base:DocNumber') #按標籤名稱查詢,返回標籤結點陣列 app_num = app_nums[2] print('專利申請號:'+app_num.firstChild.data) titles =
root.getElementsByTagName('business:InventionTitle') title = titles[0] print('專利名稱:'+title.firstChild.data) Paragraphs = root.getElementsByTagName('base:Paragraphs') abstract = Paragraphs[0] print('專利摘要:'+abstract.firstChild.data) company_names = root.getElementsByTagName('base:Name'
) company_name = company_names[0] print('公司名稱:'+company_name.firstChild.data) mystr = '' for i in range(len(Paragraphs)): if (Paragraphs[i].firstChild.data == '發明內容\n\t'): i+=1 while Paragraphs[i].firstChild.data != '附圖說明\n\t': mystr = find_child(Paragraphs[i].childNodes, mystr) i+=1 print('發明內容:' + mystr)