Python Forum
Using xpath to get value of a nested element name using tag named
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Using xpath to get value of a nested element name using tag named
#4
**Note**: I named my file 'stuff.xml' change this line to your filename
You may have to install lxml if you don't already have it:
pip install lxml
and finally, I use f-string which requires python 3.6 or newer
if you have to use earlier version for some reason, change line 15 to:
            print('tag: {}, value: {}'.format(element.tag, text))
You should use lxml:
from lxml import etree
import os

def parse_xml(filename):
    os.chdir(os.path.abspath(os.path.dirname(__file__)))
    with open(filename) as fp:
        xml_text = fp.read()
    tree = etree.fromstring(xml_text)

    for kid in tree.getchildren():
        for element in kid.getchildren():
            text = None
            if element.text:
                text = element.text.strip()
            print(f'tag: {element.tag}, value: {text}')


if __name__ == "__main__":
    parse_xml("stuff.xml")
output:
Output:
tag: rank, value: 1 tag: year, value: 2008 tag: gdppc, value: 141100 tag: neighbor, value: None tag: neighbor, value: None tag: rank, value: 4 tag: year, value: 2011 tag: gdppc, value: 59900 tag: neighbor, value: None tag: rank, value: 68 tag: year, value: 2011 tag: gdppc, value: 13600 tag: neighbor, value: None tag: neighbor, value: None
Reply


Messages In This Thread
RE: Using xpath to get value of a nested element name using tag named - by Larz60+ - Jan-18-2019, 07:13 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  XPATH element does not change its value Martinelli 0 1,302 Oct-06-2019, 07:02 PM
Last Post: Martinelli
  Unable to locate element no such element gahhon 6 4,731 Feb-18-2019, 02:09 PM
Last Post: gahhon
  Replace element in a nested list nagymusic 4 18,159 Nov-19-2018, 08:03 PM
Last Post: nilamo
  Newbie question for sum the specific element in named tuple zydjohn 1 4,326 Dec-12-2017, 07:29 PM
Last Post: buran
  Change single element in 2D list changes every 1D element AceScottie 9 12,495 Nov-13-2017, 07:05 PM
Last Post: Larz60+
  Zip on single element in nested sequence. rhubarbpieguy 14 8,504 Jul-01-2017, 06:10 PM
Last Post: micseydel

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020