How to parse XML and count instances of a particular node attribute in Python? Last Updated : 13 Dec, 2022 Comments Improve Suggest changes Like Article Like Report In this article, we will see how to parse XML and count instances of a particular node attribute in Python. What is XML? Extensible Markup Language (XML) Extensible Markup Language (XML) is a markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. It is a markup language like HTML, and It is designed to store and transport data. Here, we will use built-in XML modules in python for parsing XML and then counting the instances of a node. We use ElementTree XML API and minidom API to parse our XML file. XML code for a note is given below: It should be saved as a country_data.xml file in the same directory. XML <?xml version="1.0"?> <data> <country name="France"> <rank>1</rank> <year>2008</year> <gdppc>141100</gdppc> <neighbor name="Germany" direction="E"/> <neighbor name="Spain" direction="N"/> </country> <country name="Poland"> <rank>4</rank> <year>2011</year> <gdppc>59900</gdppc> <neighbor name="Germany" direction="W"/> </country> <country name="Italy"> <rank>68</rank> <year>2015</year> <gdppc>13600</gdppc> <neighbor name="France" direction="N"/> </country> </data> Example 1: In this example, We will use xml.etree.ElementTree module for parsing our XML file and storing in tree variable and after that we will find all the instances of a particular node attribute with the python findall() function of this module. Now we iterate over a list and check for a particular node attribute value if it matches then we will increment count as 1 to our variable. Python3 # Importing our module import xml.etree.ElementTree as ET # Finding the Node Attribute with name tag # neighbor and name value as "Germany" Name_attribute = "France"; # Parsing our xml file tree = ET.parse('country_data.xml') root = tree.getroot(); # Counting the instance of Node attribute with findall NO_node = 0 ; for instance in root.findall('country/neighbor'): # Checking for the particular Node Attribute if instance.get('name') == Name_attribute: NO_node+=1; # Printing Number of nodes print ("total instance of given node attribute is : ", NO_node) Output: total instance of given node attribute is : 1Example 2: In this example, we will parse our XML file with the help of minidom module and assign this to the doc variable, getElementsByTagName() function returns a list of instances of a particular node. Now we iterate over a list and check for a particular node attribute value if it matches then we will increment count as 1 to our variable. Python3 # Importing our module from xml.dom import minidom # Finding the node instance with name "Germany" Name_attribute = "Germany"; # Parsing our xml file doc = minidom.parse('country_data.xml') root = doc.getElementsByTagName('neighbor') Number_attributes = 0; for i in root: # print ctypes.cast(i, ctypes.py_object).value if i.attributes['name'].value == Name_attribute: Number_attributes += 1; # Printing Number of nodes print ("Total instance of Particular node attribute is : " ,Number_attributes) Output: Total instance of Particular node attribute is : 2 Comment More infoAdvertise with us Next Article How to parse XML and count instances of a particular node attribute in Python? S satyam00so Follow Improve Article Tags : Python Python-XML Practice Tags : python Similar Reads Python Tutorial | Learn Python Programming Language Python Tutorial â Python is one of the most popular programming languages. Itâs simple to use, packed with features and supported by a wide range of libraries and frameworks. Its clean syntax makes it beginner-friendly.Python is:A high-level language, used in web development, data science, automatio 10 min read Python Interview Questions and Answers Python is the most used language in top companies such as Intel, IBM, NASA, Pixar, Netflix, Facebook, JP Morgan Chase, Spotify and many more because of its simplicity and powerful libraries. To crack their Online Assessment and Interview Rounds as a Python developer, we need to master important Pyth 15+ min read Non-linear Components In electrical circuits, Non-linear Components are electronic devices that need an external power source to operate actively. Non-Linear Components are those that are changed with respect to the voltage and current. Elements that do not follow ohm's law are called Non-linear Components. Non-linear Co 11 min read Python OOPs Concepts Object Oriented Programming is a fundamental concept in Python, empowering developers to build modular, maintainable, and scalable applications. By understanding the core OOP principles (classes, objects, inheritance, encapsulation, polymorphism, and abstraction), programmers can leverage the full p 11 min read Python Projects - Beginner to Advanced Python is one of the most popular programming languages due to its simplicity, versatility, and supportive community. Whether youâre a beginner eager to learn the basics or an experienced programmer looking to challenge your skills, there are countless Python projects to help you grow.Hereâs a list 10 min read Python Exercise with Practice Questions and Solutions Python Exercise for Beginner: Practice makes perfect in everything, and this is especially true when learning Python. If you're a beginner, regularly practicing Python exercises will build your confidence and sharpen your skills. To help you improve, try these Python exercises with solutions to test 9 min read Python Programs Practice with Python program examples is always a good choice to scale up your logical understanding and programming skills and this article will provide you with the best sets of Python code examples.The below Python section contains a wide collection of Python programming examples. These Python co 11 min read Spring Boot Tutorial Spring Boot is a Java framework that makes it easier to create and run Java applications. It simplifies the configuration and setup process, allowing developers to focus more on writing code for their applications. This Spring Boot Tutorial is a comprehensive guide that covers both basic and advance 10 min read Class Diagram | Unified Modeling Language (UML) A UML class diagram is a visual tool that represents the structure of a system by showing its classes, attributes, methods, and the relationships between them. It helps everyone involved in a projectâlike developers and designersâunderstand how the system is organized and how its components interact 12 min read Enumerate() in Python enumerate() function adds a counter to each item in a list or other iterable. It turns the iterable into something we can loop through, where each item comes with its number (starting from 0 by default). We can also turn it into a list of (number, item) pairs using list().Let's look at a simple exam 3 min read Like