XML Разбор в python (xml .etree.ElementTree) - PullRequest
1 голос
/ 28 января 2020

Я использую import xml .etree.ElementTree в качестве ET для анализа xml файла в python

Я пытался:

   import xml.etree.ElementTree as ET
   tree = ET.parse('pyxml.xml')
   self.root = tree.getroot()
   name=root[0][0].text
   username=root[0][1].text
   password=root[0][2].text
   host=root[0][3].text
   port=root[0][4].text

py xml. xml:

<data>
    <database>
        <name>qwe</name>
        <username>postgres</username>
        <password>1234</password>
        <host>localhost</host>
        <port>5432</port>
    </database>
</data>

Но я хочу XML файл, подобный:

<data>
<database name="abc"  username="xyz" password="dummy" host="localhost" port="5432"/>
</data>

Если я сделаю это, root [0] [0]. Текст не работает. Может кто-нибудь сказать, как получить к нему доступ?

1 Ответ

0 голосов
/ 28 января 2020

Попробуйте код ниже,

import xml.etree.ElementTree as ET
tree = ET.parse('/Users/a-8525/Documents/tmp/pyxml.xml')
root = tree.getroot()

database = root.find('database')
attribute = database.attrib

name = attribute['name']
username = attribute['username']
password =attribute['password']
host = attribute['host']
port = attribute['port']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...