簡體   English   中英

使用ElementTree獲取XML標簽值

[英]Getting XML tag values using ElementTree

對於以下XML文件,我正在嘗試獲取所有書名並將其添加到列表中。

XML檔案-

<?xml version="1.0" encoding="UTF-8"?>
<Text>
 <Library>
    <Book>
            <Title>XYZ</Title>
     </Book>
     <Book>
            <Title>ABC</Title>
     </Book>
 </Library>
</Text>

我正在使用ElementTree使用此代碼提取標簽值-

for child in root.iter('Text'):
  t1=(child.find('Library/Book/Title').text)
  t2=(child.find('Library/Book/Title').text)
  print (t1,t2)

我無法獲得第二個標簽值。 是否可以一次找到兩個值並將其附加到列表中?

您可以使用findall而不是find在列表中獲得兩個值

更新了代碼,使其適合注釋:

library = []
for text in root.findall('Library'):
    titles = [title.text for title in text.findall('Book/Title')]
    library.append(titles)

這將為每個庫創建一個數組,並將每個書名添加到該數組中。結果:

>>>print(library)
[['XYZ','ABC'],['LMN','PQR']]

是文檔

暫無
暫無

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

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