Python3提取xml檔案中的內容
阿新 • • 發佈:2019-01-12
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)