簡體   English   中英

從文件到文本的XML解析PYTHON

[英]XML parsing from file to text PYTHON

我需要從Python中的XML文件獲取文本值。

我的實際XML文件是:

<?xml version="1.0"?>
<data>
        <command>first</command>
        <command>second</command>
        <command>third</command>
</data>

我需要從文件中讀取它,然后獲得類似以下的輸出:

first
second
third

我正在做一些類似的消息:

from xml.dom import minidom
doc = minidom.parse("C:\ciao.xml")
name = doc.getElementsByTagName("command")[0]
print(name.firstChild.data)

但是我需要獲取所有命令,而不僅僅是一個一個

使用for循環?

for name in doc.getElementsByTagName("command"):
    print(name.firstChild.data)

如果您需要將它們存儲在列表中,請使用列表理解,

data = [i.firstChild.data for i in doc.getElementsByTagName("command")]

您可以使用BeautifulSoup。

>>> from bs4 import BeautifulSoup
>>> xml = """<?xml version="1.0"?>
<data>
        <command>first</command>
        <command>second</command>
        <command>third</command>
</data>"""
>>> soup = BeautifulSoup(xml, 'xml')
>>> for i in soup.find_all('command'):
    print(i.text)


first
second
third

暫無
暫無

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

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