{"id":23778,"date":"2024-03-21T12:40:05","date_gmt":"2024-03-21T12:40:05","guid":{"rendered":"https:\/\/sonra.io\/?p=23778"},"modified":"2026-04-27T13:57:20","modified_gmt":"2026-04-27T13:57:20","slug":"xml-conversion-using-python","status":"publish","type":"post","link":"https:\/\/sonra.io\/xml-conversion-using-python\/","title":{"rendered":"XML Conversion Using Python in 2026"},"content":{"rendered":"\n<p>XML (eXtensible Markup Language) is a common data format for data exchange and used in various industry data standards such as ISO 20022, HL7, <a href=\"https:\/\/sonra.io\/acord-xml-to-database\/\" target=\"_blank\" rel=\"noreferrer noopener\">ACORD<\/a> just to name a few. However, for data analysis purposes the data locked away in XML needs to be converted to a more suitable format, typically a relational database or CSV.<\/p>\n\n\n\n<p>One option to convert XML is Python. Python offers several practical methods and tools for handling XML. Among these, ElementTree stands out for its simplicity, being part of the standard library and offering an easy-to-use API for XML operations. lxml is favored for performance-sensitive tasks, leveraging the libxml2 and libxslt libraries for fast processing.<\/p>\n\n\n\n<p>xmltodict simplifies XML interaction by converting documents into Python dictionaries, making data manipulation more intuitive. Choosing between these libraries depends on the project&#8217;s specific needs, such as performance, ease of use, or particular XML handling requirements.<\/p>\n\n\n\n<p>In this document, we&#8217;ll explore the various tools and techniques for <a href=\"https:\/\/sonra.io\/xml-converters-and-conversion-guide\/\">converting XML<\/a> to a tabular or relational format in Python. We will also discuss the scenarios when a fully automated approach using an XML conversion tool makes more sense than hand coding a custom solution.<\/p>\n\n\n\n<script src=\"https:\/\/sonra.io\/wp-content\/my-rcrs\/pdpopup.js\" defer=\"\"><\/script>\n<div class=\"popup-container\">\n    <div class=\"pdpopup\">\n        <span id=\"cls-popup\">&#10005;<\/span>\n        <div class=\"popup-cnt\">\n            <div class=\"popup1st\">\n                <p>Use Flexter to turn <span style=\"color:#3D68F8;\">XML<\/span> and <span style=\"color:#3D68F8;\">JSON<\/span> into Valuable Insights<\/p>\n                <ul class=\"flextlist\"><li>100% Automation<\/li><li>0% Coding<\/li><\/ul>\n                <div class=\"ppbtns\">\n                    <a href=\"https:\/\/sonra.io\/flexter-product-page\/\" class=\"button-effect jmp-btn\" target=\"_blank\" rel=\"noopener\">Learn More<\/a><a href=\"https:\/\/sonra.io\/xml-to-csv-converter\/\" class=\"button-effect jmp-btn\" rel=\"noopener\" target=\"_blank\">Try For Free<\/a>\n                <\/div>\n            <\/div>         \n        <\/div>\n    <\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><a id=\"post-23778-_h3vhebpr4dxk\"><\/a>Popular Libraries and Methods for XML Conversion in Python<\/h2>\n\n\n\n<p>Python provides <a href=\"https:\/\/docs.python.org\/3\/library\/xml.html\" target=\"_blank\" rel=\"noreferrer noopener\">several libraries and methods<\/a> suitable for XML conversion, catering to various data handling requirements. While XML is one of many formats used for data exchange and storage, its conversion into more commonly used formats like CSV can enhance data interoperability and integration.<\/p>\n\n\n\n<p>This overview introduces key Python libraries, including lxml, ElementTree, xmltodict, BeautifulSoup, and pandas, that facilitate the conversion process. These libraries offer diverse approaches for parsing, modifying, and converting XML.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a id=\"post-23778-_s63wpqtg6gt4\"><\/a>1. ElementTree API<\/h3>\n\n\n\n<p><strong>Introduction and Basic Usage<\/strong><\/p>\n\n\n\n<p>The ElementTree API is a built-in Python library for parsing and creating XML data.<\/p>\n\n\n\n<p>Basic usage involves importing the library, parsing an XML file, and then navigating or manipulating the tree structure.<\/p>\n\n\n\n<p><strong>Pros and Cons<\/strong><\/p>\n\n\n\n<p><strong>Pros<\/strong>: Integrated into Python&#8217;s standard library, user-friendly, sufficient for most basic XML tasks.<\/p>\n\n\n\n<p><strong>Cons<\/strong>: Not as fast as some external libraries, lacks some advanced features like XPath support.<\/p>\n\n\n\n<p><strong>Input XML<\/strong><\/p>\n\n\n<pre class=\"lang:default decode:true\">&lt;root&gt;\n    &lt;record&gt;\n        &lt;book&gt;Da Vinci Code&lt;\/book&gt;\n        &lt;category&gt;Fiction&lt;\/category&gt;\n    &lt;\/record&gt;\n    &lt;record&gt;\n        &lt;book&gt;C++&lt;\/book&gt;\n        &lt;category&gt;Education&lt;\/category&gt;\n    &lt;\/record&gt;\n&lt;\/root&gt;<\/pre>\n\n\n<p><strong>Code Snippet<\/strong><\/p>\n\n\n<pre class=\"lang:default decode:true\">import xml.etree.ElementTree as ET\nimport csv\n\n\n# Load and parse the XML file\ntree = ET.parse('\/home\/sonra\/Desktop\/book.xml')\nroot = tree.getroot()\n\n\nwith open('\/home\/sonra\/Desktop\/output.csv', 'w', newline='') as csvfile:\n   csvwriter = csv.writer(csvfile)\n\n\n   headers = ['BOOK', 'CATEGORY']\n   csvwriter.writerow(headers)\n\n\n   # Iterate through each record in the XML and write to the CSV file\n   for record in root.findall('record'):\n       field1 = record.find('book').text\n       field2 = record.find('category').text\n       csvwriter.writerow([field1, field2])<\/pre>\n\n\n<h3 class=\"wp-block-heading\"><a id=\"post-23778-_ks0kjq8q4rcq\"><\/a>Output<\/h3>\n\n\n\n<p><a id=\"post-23778-_w7ehaurobeyd\"><\/a>Output is a csv file containing the following;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th> BOOK<\/th><th>CATEGORY<\/th><\/tr><tr><td> Da Vinci Code<\/td><td> Fiction<\/td><\/tr><tr><td> C++ <\/td><td>Education<\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a id=\"post-23778-_9gv0pqngdafy\"><\/a>2. Lxml<\/h3>\n\n\n\n<p><strong>Introduction and Basic Usage<\/strong><\/p>\n\n\n\n<p>lxml is a third-party Python library that extends the capabilities of ElementTree with additional features and improved performance. It is often used as a drop-in replacement for ElementTree due to its similar API.<\/p>\n\n\n\n<p>Basic usage typically involves importing the library, parsing XML, and using XPath for advanced querying.<\/p>\n\n\n\n<p><strong>Pros and Cons<\/strong><\/p>\n\n\n\n<p><strong>Pros:<\/strong> Faster parsing and better memory management, especially for large XML files. Comprehensive support for XPath, XSLT, and schema validation.<\/p>\n\n\n\n<p><strong>Cons<\/strong>: External dependency, slightly more complex than ElementTree.<\/p>\n\n\n\n<p><strong>Input XML<\/strong><\/p>\n\n\n<pre class=\"lang:default decode:true \">&lt;University id=\"TUD\"&gt;\n    &lt;Faculty id=\"Engineering\"&gt;\n        &lt;Department id=\"ComputerScience\"&gt;\n            &lt;Course&gt;Introduction to Programming&lt;\/Course&gt;\n            &lt;Course&gt;Algorithms and Data Structures&lt;\/Course&gt;\n        &lt;\/Department&gt;\n        &lt;Department id=\"ElectricalEngineering\"&gt;\n            &lt;Course&gt;Circuit Analysis&lt;\/Course&gt;\n            &lt;Course&gt;Electromagnetics&lt;\/Course&gt;\n            &lt;Course&gt;Control Systems&lt;\/Course&gt;\n        &lt;\/Department&gt;\n        &lt;ResearchGroup id=\"ArtificialIntelligence\"&gt;\n            &lt;Project&gt;Machine Learning Advances&lt;\/Project&gt;\n            &lt;Project&gt;Neural Network Optimization&lt;\/Project&gt;\n            &lt;Project&gt;AI Ethics and Society&lt;\/Project&gt;\n        &lt;\/ResearchGroup&gt;\n        &lt;ResearchGroup id=\"Nanotechnology\"&gt;\n            &lt;Project&gt;Nano-materials Engineering&lt;\/Project&gt;\n            &lt;Project&gt;Quantum Computing&lt;\/Project&gt;\n        &lt;\/ResearchGroup&gt;\n    &lt;\/Faculty&gt;\n    &lt;AdministrativeUnit id=\"Library\"&gt;\n        &lt;Service&gt;Book Lending&lt;\/Service&gt;\n        &lt;Service&gt;Research Assistance&lt;\/Service&gt;\n    &lt;\/AdministrativeUnit&gt;\n    &lt;AdministrativeUnit id=\"IT\"&gt;\n        &lt;Service&gt;Campus Network&lt;\/Service&gt;\n        &lt;Service&gt;Helpdesk&lt;\/Service&gt;\n    &lt;\/AdministrativeUnit&gt;\n&lt;\/University&gt;<\/pre>\n\n\n<p><strong>Code Snippet<\/strong><\/p>\n\n\n<pre class=\"lang:default decode:true \">from lxml import etree\nimport csv\n\n\ndata_containers = {\n   \"Faculty\": [],\n   \"Department\": [],\n   \"ResearchGroup\": [],\n   \"AdministrativeUnit\": [],\n   \"Course\": [],\n   \"Project\": [],\n   \"Service\": [],\n   \"University\": []\n}\n\n\ndef categorize_data(element, university_id=None, faculty_id=None, department_id=None, research_group_id=None, administrative_unit_id=None):\n   element_id = element.attrib.get('id', None)\n\n\n   # Handling for 'University'\n   if element.tag == \"University\" and element_id:\n       university_id = element_id\n       data_containers[\"University\"].append({\n           \"University ID\": university_id,\n       })\n\n\n   # Handling for 'Faculty'\n   elif element.tag == \"Faculty\" and element_id:\n       faculty_id = element_id\n       data_containers[\"Faculty\"].append({\n           \"University ID\": university_id,\n           \"Faculty ID\": faculty_id,\n       })\n\n\n   # Handling for 'Department'\n   elif element.tag == \"Department\" and element_id:\n       department_id = element_id\n       data_containers[\"Department\"].append({\n           \"University ID\": university_id,\n           \"Faculty ID\": faculty_id,\n           \"Department ID\": department_id,\n       })\n\n\n   # Handling for 'ResearchGroup'\n   elif element.tag == \"ResearchGroup\" and element_id:\n       research_group_id = element_id\n       data_containers[\"ResearchGroup\"].append({\n           \"University ID\": university_id,\n           \"Faculty ID\": faculty_id,\n           \"Research Group ID\": research_group_id,\n       })\n\n\n   # Handling for 'AdministrativeUnit'\n   elif element.tag == \"AdministrativeUnit\" and element_id:\n       administrative_unit_id = element_id\n       data_containers[\"AdministrativeUnit\"].append({\n           \"University ID\": university_id,\n           \"Administrative Unit ID\": administrative_unit_id,\n       })\n\n\n   # Handling for 'Course'\n   elif element.tag == \"Course\":\n       course_name = element.text.strip()\n       data_containers[\"Course\"].append({\n           \"Department ID\": department_id,\n           \"Course Name\": course_name,\n       })\n\n\n   # Handling for 'Project'\n   elif element.tag == \"Project\":\n       project_name = element.text.strip()\n       data_containers[\"Project\"].append({\n           \"Research Group ID\": research_group_id,\n           \"Project Name\": project_name,\n       })\n\n\n   # Handling for 'Service'\n   elif element.tag == \"Service\":\n       service_name = element.text.strip()\n       data_containers[\"Service\"].append({\n           \"Administrative Unit ID\": administrative_unit_id,\n           \"Service Name\": service_name,\n       })\n\n\n   for child in element:\n       categorize_data(child, university_id, faculty_id, department_id, research_group_id, administrative_unit_id)\n\ndef write_data_to_csv():\n   for tag, data in data_containers.items():\n       if data:\n           with open(f'{tag}.csv', 'w', newline='') as file:\n               writer = csv.DictWriter(file, fieldnames=data[0].keys())\n               writer.writeheader()\n               writer.writerows(data)\n           print(f\"Data written to {tag}.csv\")\n\n\ndef parse_and_write(xml_file):\n   tree = etree.parse(xml_file)\n   root = tree.getroot()\n   categorize_data(root, root.attrib['id'])\n   write_data_to_csv()\n\nxml_file_path = '\/home\/sonra\/Desktop\/book.xml'\nparse_and_write(xml_file_path)<\/pre>\n\n\n<p><strong>Output<\/strong><\/p>\n\n\n\n<p>Output consists of multiple csv files where each csv file contains each tag and its corresponding details.<\/p>\n\n\n\n<p><strong>AdministrativeUnit.csv<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th><strong>University ID<\/strong><\/th><th><strong>Administrative Unit ID<\/strong><\/th><\/tr><tr><td>TUD<\/td><td>Library <\/td><\/tr><tr><td>TUD <\/td><td>IT <\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<p><strong>Course.csv<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th> <strong>Department ID<\/strong> <\/th><th> <strong>Course <\/strong>Name <\/th><\/tr><tr><td> ComputerScience <\/td><td>Introduction<p> to Programming<\/p><\/td><\/tr><tr><td> ComputerScience <\/td><td>Algorithms and Data Structures <\/td><\/tr><tr><td>ElectricalEngineering<\/td><td>Circuit Analysis<\/td><\/tr><tr><td> ElectricalEngineering <\/td><td> Electromagnetics <\/td><\/tr><tr><td> ElectricalEngineering <\/td><td>Control Systems<\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<p><strong>Department.csv<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th><strong>University ID<\/strong><\/th><th><strong>Faculty ID<\/strong> <\/th><th> <strong>Department ID<\/strong> <\/th><\/tr><tr><td>TUD<\/td><td> Engineering <\/td><td> ComputerScience <\/td><\/tr><tr><td>TUD<\/td><td> Engineering <\/td><td> ElectricalEngineering <\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<p><strong>Faculty.csv<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th><strong>University ID<\/strong><\/th><th> <strong>Faculty ID<\/strong> <\/th><\/tr><tr><td> TUD <\/td><td> Engineering <\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<p><strong>Project.csv<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th> <strong>Research Group ID<\/strong> <\/th><th> <strong>Project Name<\/strong> <\/th><\/tr><tr><td> ArtificialIntelligence <\/td><td> Machine Learning Advances <\/td><\/tr><tr><td> ArtificialIntelligence <\/td><td> Neural Network Optimization <\/td><\/tr><tr><td> ArtificialIntelligence <\/td><td> AI Ethics and Society <\/td><\/tr><tr><td> Nanotechnology <\/td><td> Nano-materials Engineering <\/td><\/tr><tr><td> Nanotechnology <\/td><td> Quantum Computing <\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<p><strong>ResearchGroup.csv<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th> <strong>University ID<\/strong> <\/th><th> <strong>Faculty ID<\/strong> <\/th><th> <strong>Research Group ID<\/strong> <\/th><\/tr><tr><td> TUD <\/td><td> Engineering <\/td><td> ArtificialIntelligence <\/td><\/tr><tr><td> TUD <\/td><td> Engineering <\/td><td> Nanotechnology <\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<p><strong>Service.csv<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th> <strong>Administrative Unit ID<\/strong> <\/th><th><strong>Service Name<\/strong><\/th><\/tr><tr><td>Library<\/td><td>Book Lending<\/td><\/tr><tr><td> Library <\/td><td>Research Assistance<\/td><\/tr><tr><td>IT<\/td><td>Campus Network<\/td><\/tr><tr><td>IT<\/td><td>Helpdesk<\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<p><strong>University.csv<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th> <strong>University ID<\/strong> <\/th><\/tr><tr><td>TUD<\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a id=\"post-23778-_gk7qzk9b4ngr\"><\/a>3. Xmltodict<\/h3>\n\n\n\n<p><strong>Introduction and Basic Usage<\/strong><\/p>\n\n\n\n<p>xmltodict is a Python library that makes <a href=\"https:\/\/sonra.io\/json-to-sql-database-guide\/\">working with XML feel like working with JSON<\/a> by converting XML into Python dictionaries.<\/p>\n\n\n\n<p>Basic usage includes importing the library and using it to parse XML files, allowing for easy access to elements as dictionary keys.<\/p>\n\n\n\n<p><strong>Pros and Cons<\/strong><\/p>\n\n\n\n<p><strong>Pros: <\/strong>Simplifies XML data structure, making it more Pythonic and easier to understand and manipulate.<\/p>\n\n\n\n<p><strong>Cons<\/strong>: Might not be suitable for highly complex XML structures or when preserving the order of elements is critical.<\/p>\n\n\n\n<p><strong>Input XML<\/strong><\/p>\n\n\n<pre class=\"lang:default decode:true \">&lt;root&gt;\n    &lt;record&gt;\n        &lt;book&gt;Da Vinci Code&lt;\/book&gt;\n        &lt;category&gt;Fiction&lt;\/category&gt;\n    &lt;\/record&gt;\n    &lt;record&gt;\n        &lt;book&gt;C++&lt;\/book&gt;\n        &lt;category&gt;Education&lt;\/category&gt;\n    &lt;\/record&gt;\n&lt;\/root&gt;<\/pre>\n\n\n<p><strong>Code Snippet<\/strong><\/p>\n\n\n<pre class=\"lang:default decode:true \">import xmltodict\nimport csv\n\n\n# Read and parse the XML file\nwith open('\/home\/sonra\/Desktop\/book.xml', 'r') as file:\n   xml_data = file.read()\n   data_dict = xmltodict.parse(xml_data)\n\n\n# Open a CSV file for writing\nwith open('\/home\/sonra\/Desktop\/output2.csv', 'w', newline='') as csvfile:\n   csvwriter = csv.writer(csvfile)\n\n\n   # Define the headers\n   headers = ['BOOK', 'CATEGORY']\n   csvwriter.writerow(headers)\n\n\n   # Extract and write data to CSV\n   for record in data_dict['root']['record']:\n       book = record['book']\n       category = record['category']\n       csvwriter.writerow([book, category])<\/pre>\n\n\n<p><strong>Output<\/strong><\/p>\n\n\n\n<p>Output is a csv file containing the following;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>BOOK<\/th><th>CATEGORY<\/th><\/tr><tr><td>Da Vinci Code<\/td><td>Fiction<\/td><\/tr><tr><td>C++<\/td><td>Education<\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/sonra.io\/flexter-product-page\/\" target=\"_blank\" rel=\"noreferrer noopener\"><span class=\"m-posts__contentImg\"><img decoding=\"async\" width=\"1024\" height=\"538\" src=\"https:\/\/sonra.io\/wp-content\/uploads\/2024\/02\/Hands-high-fiving-with-text-about-free-online-XML-converter-1024x538.png\" alt=\"\" class=\"wp-image-23588\" srcset=\"https:\/\/sonra.io\/wp-content\/uploads\/2024\/02\/Hands-high-fiving-with-text-about-free-online-XML-converter-1024x538.png 1024w, https:\/\/sonra.io\/wp-content\/uploads\/2024\/02\/Hands-high-fiving-with-text-about-free-online-XML-converter-300x158.png 300w, https:\/\/sonra.io\/wp-content\/uploads\/2024\/02\/Hands-high-fiving-with-text-about-free-online-XML-converter-768x403.png 768w, https:\/\/sonra.io\/wp-content\/uploads\/2024\/02\/Hands-high-fiving-with-text-about-free-online-XML-converter-1536x806.png 1536w, https:\/\/sonra.io\/wp-content\/uploads\/2024\/02\/Hands-high-fiving-with-text-about-free-online-XML-converter.png 1600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/span><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a id=\"post-23778-_dps76d9i1fc8\"><\/a>4. Beautiful Soup<\/h3>\n\n\n\n<p><strong>Introduction and Basic Usage<\/strong><\/p>\n\n\n\n<p>Beautiful Soup is a Python library for parsing HTML and XML documents, commonly used for web scraping.<\/p>\n\n\n\n<p>Basic usage involves importing the library, parsing XML data, and then using its intuitive API to navigate and search the document.<\/p>\n\n\n\n<p>Provides a more intuitive interface for navigating and searching the document tree.<\/p>\n\n\n\n<p>Not as fast as lxml, but easier for extracting data from irregular XML structures.<\/p>\n\n\n\n<p><strong>Pros and Cons<\/strong><\/p>\n\n\n\n<p><strong>Pros<\/strong>: User-friendly and ideal for parsing and extracting data from irregularly structured XML, like HTML.<\/p>\n\n\n\n<p><strong>Cons<\/strong>: Slower compared to lxml, more suitable for web data scraping than large-scale XML data processing.<\/p>\n\n\n\n<p><strong>Input XML<\/strong><\/p>\n\n\n<pre class=\"lang:default decode:true \">&lt;root&gt;\n    &lt;record&gt;\n        &lt;book&gt;Da Vinci Code&lt;\/book&gt;\n        &lt;category&gt;Fiction&lt;\/category&gt;\n    &lt;\/record&gt;\n    &lt;record&gt;\n        &lt;book&gt;C++&lt;\/book&gt;\n        &lt;category&gt;Education&lt;\/category&gt;\n    &lt;\/record&gt;\n&lt;\/root&gt;<\/pre>\n\n\n<p><strong>Code Snippet<\/strong><\/p>\n\n\n<pre class=\"lang:default decode:true \">from bs4 import BeautifulSoup\nimport csv\n\n\n# Read and parse the XML file\nwith open('\/home\/sonra\/Desktop\/book.xml', 'r') as file:\n   xml_data = file.read()\n   soup = BeautifulSoup(xml_data, 'lxml')\n\n\n# Open a CSV file for writing\nwith open('\/home\/sonra\/Desktop\/output3.csv', 'w', newline='') as csvfile:\n   csvwriter = csv.writer(csvfile)\n\n\n   # Define the headers\n   headers = ['BOOK', 'CATEGORY']\n   csvwriter.writerow(headers)\n\n\n   # Extract and write data to CSV\n   for record in soup.find_all('record'):\n       book = record.find('book').text\n       category = record.find('category').text\n       csvwriter.writerow([book, category])<\/pre>\n\n\n<p><strong>Output<\/strong><\/p>\n\n\n\n<p>Output is a csv file containing the following;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>BOOK<\/th><th>CATEGORY<\/th><\/tr><tr><td>Da Vinci Code <\/td><td>Fiction <\/td><\/tr><tr><td>C++<\/td><td>Education<\/td><\/tr><\/thead><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a id=\"post-23778-_ehrlbqq93trp\"><\/a>5. Pandas<\/h3>\n\n\n\n<p><strong>Introduction and Basic Usage<\/strong><\/p>\n\n\n\n<p>Pandas is a data manipulation and analysis library that can also read XML data directly into DataFrames.<\/p>\n\n\n\n<p>Basic usage includes importing Pandas and using the read_xml function to convert XML into a structured DataFrame.<\/p>\n\n\n\n<p><strong>Pros and Cons<\/strong><\/p>\n\n\n\n<p><strong>Pros<\/strong>: Integrates <a href=\"https:\/\/sonra.io\/how-to-insert-xml-data-into-sql-table\/\">XML data<\/a> seamlessly into data analysis workflows, easy conversion to tabular format.<\/p>\n\n\n\n<p><strong>Cons<\/strong>: Not as versatile for XML manipulation as other libraries, more suitable for data analysis than general XML processing.<\/p>\n\n\n\n<p><strong>Sample Code Snippet<\/strong><\/p>\n\n\n<pre class=\"lang:default decode:true \">import pandas as pd\n\ndf = pd.read_xml('example.xml')\nprint(df)<\/pre>\n\n\n<p>Each library offers unique features and caters to different needs in XML processing, making them valuable tools in a Python developer&#8217;s toolkit for handling XML data.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a id=\"post-23778-_zc6ck1y02fxk\"><\/a>Tools for automatically converting XML<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><a id=\"post-23778-_n1ar47wjf22t\"><\/a>Advantages of an automated approach<\/h3>\n\n\n\n<p>While Python libraries offer flexibility when it comes to <a href=\"https:\/\/sonra.io\/xml-converters-by-use-case-bidirectional\/\">XML conversion projects, XML converters<\/a> fully automate the whole conversion process. These tools offer the following advantages:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Increased Efficiency:<\/strong> These systems significantly shorten the time required to complete projects, enabling quicker transition from development to deployment. The automation speeds up the processing, making it possible to get projects up and running in less time.<\/li>\n\n\n\n<li><strong>Adaptability to Data Volume:<\/strong> Whether dealing with large datasets or smaller volumes, these tools can adjust their operations to handle any size efficiently. This flexibility ensures that both expansive and modest projects can be managed effectively.<\/li>\n\n\n\n<li><strong>Simplified Complexity Management:<\/strong> Complex data formats, including various types of XML and XSD, can be easily managed. This capability makes navigating through intricate data structures less daunting and more straightforward.<\/li>\n\n\n\n<li><strong>Reduced Dependency on Expertise:<\/strong> The intuitive design of these tools lessens the need for specialized knowledge in XML, opening up the process to a broader audience. This aspect makes it more user-friendly and less reliant on extensive training.<\/li>\n\n\n\n<li><strong>Minimal Code Adjustments:<\/strong> The need for frequent code modifications in response to project changes is drastically reduced. This stability not only simplifies maintenance but also enhances the overall manageability of the codebase.<\/li>\n\n\n\n<li><strong>Decreased Risk of Setbacks:<\/strong> By minimizing the likelihood of encountering delays and overspending, these tools help ensure that projects progress smoothly and stay within budget, leading to more predictable outcomes.<\/li>\n\n\n\n<li><strong>Quicker Data Preparation:<\/strong> The automation of the conversion process, from analyzing data to creating schemas and mapping, means data is prepared for use more rapidly. This efficiency aids in making timely decisions based on the processed data.<\/li>\n\n\n\n<li><strong>Consistent and Reliable Data Handling:<\/strong> The automated approach ensures a lower risk of human error, maintaining a consistent quality of data processing. This reliability is crucial for upholding data integrity and accuracy.<\/li>\n\n\n\n<li><strong>Ease of Handling Complex Data:<\/strong> With user-friendly interfaces, these tools make processing complex data formats more accessible, reducing the need for rare XML expertise. This ease of use helps to simplify tasks that were previously considered challenging.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><a id=\"post-23778-_2ewtp4ijtlal\"><\/a>Choosing between Python coding and automated XML conversion<\/h3>\n\n\n\n<p>Choosing between Python coding and using an <a href=\"https:\/\/sonra.io\/xml-to-csv-converter\/\" target=\"_blank\" rel=\"noreferrer noopener\">automated XML conversion tool<\/a> for dealing with XML data really comes down to what your project&#8217;s specific needs are, especially considering the complexity of your XML files and how much customization the conversion process requires.<\/p>\n\n\n\n<p>Although Python has a large library ecosystem and strong community support for converting XML files, facilitating custom solutions and straightforward integration across diverse data processing frameworks, it is not without its drawbacks. The challenges include the possibility of performance problems while processing huge files, a long development time, and a steep learning curve.<\/p>\n\n\n\n<p>The potential of automated XML conversion solutions to simplify the conversion process is one of its many benefits. These tools perform exceptionally well in situations requiring quick XML conversion allowing organisations to transform massive amounts of XML files with minimal manual labour and coding.<\/p>\n\n\n\n<p>Because of the user-friendly design of these tools, even those with little to no programming knowledge can convert XML files. Automating repeated processes not only improves the accuracy of the data produced by lowering the possibility of human error but also speeds up the conversion process.<\/p>\n\n\n\n<p>Additionally, the characteristics of automated tools make scalability easy, enabling them to handle projects of different sizes without requiring extra programming. This makes them a good resource for businesses trying to effectively and precisely handle their XML data conversion requirements. That is where <a href=\"https:\/\/sonra.io\/flexter-product-page\/\" target=\"_blank\" rel=\"noreferrer noopener\">Flexter<\/a> comes in, embodying these advantages and offering a specialised solution for streamlined XML data management.<\/p>\n\n\n\n<p>In summary, an automated XML conversion solution is a good fit if you say yes to one or more of these questions.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Are your XML documents complex, e.g. are they based on an industry data standard, come with one or more XSDs, or have more than 50 XPaths (XML elements)?<\/li>\n\n\n\n<li>Do you have large volumes of XML data?<\/li>\n\n\n\n<li>Do you have many different types of XML documents and XML schemas?<\/li>\n\n\n\n<li>Do you have very large XML files?<\/li>\n\n\n\n<li>Do you lack XML skills such as XQuery, XPath, XSLT on your engineering team?<\/li>\n<\/ul>\n\n\n\n<p>For simple and ad hoc conversion requirements a manual coding approach is more suitable.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a id=\"post-23778-_u2x0s0dzttfb\"><\/a>Flexter \u2013 Your Solution for Complex XML Conversion:<\/h3>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/sonra.io\/flexter-product-page\/\" target=\"_blank\" rel=\"noreferrer noopener\"><span class=\"m-posts__contentImg\"><img decoding=\"async\" src=\"https:\/\/sonra.io\/wp-content\/uploads\/2024\/02\/graphic-promoting-seamless-XML-data-conversions-featuring-a-woman-in-business-attire.png\" alt=\"\"\/><\/span><\/a><\/figure>\n\n\n\n<p>For projects facing challenges with complex XML structures, substantial file sizes, or tight deadlines, Flexter is a great XML converter. Its free online version allows for an initial evaluation of the tool&#8217;s capabilities in simplifying XML conversion.<\/p>\n\n\n\n<p>Flexter&#8217;s team is available to discuss specific requirements, ensuring a streamlined and effective conversion process, contrasting with the labour intensive approach of Python scripting.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>XML (eXtensible Markup Language) is a common data format for data exchange and used in various industry data standards such as ISO 20022, HL7, ACORD just to name a few. However, for data analysis purposes the data locked away in XML needs to be converted to a more suitable format, typically a relational database or &#8230;<\/p>\n","protected":false},"author":29,"featured_media":23827,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[6],"tags":[],"class_list":["post-23778","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-xml"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>XML Conversion Using Python in 2026<\/title>\n<meta name=\"description\" content=\"From Manual XML conversions through Python to Automated conversions of Complex XML files, Find out the most reliable ways in 2026.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/sonra.io\/xml-conversion-using-python\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"XML Conversion Using Python in 2026\" \/>\n<meta property=\"og:description\" content=\"From Manual XML conversions through Python to Automated conversions of Complex XML files, Find out the most reliable ways in 2026.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sonra.io\/xml-conversion-using-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Sonra\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-21T12:40:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-27T13:57:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/sonra.io\/wp-content\/uploads\/2024\/03\/XML-Conversion-Using-Python.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"700\" \/>\n\t<meta property=\"og:image:height\" content=\"394\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Maciek\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Maciek\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/\"},\"author\":{\"name\":\"Maciek\",\"@id\":\"https:\\\/\\\/sonra.io\\\/#\\\/schema\\\/person\\\/f6961e781666bffd0142c5ccc300f219\"},\"headline\":\"XML Conversion Using Python in 2026\",\"datePublished\":\"2024-03-21T12:40:05+00:00\",\"dateModified\":\"2026-04-27T13:57:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/\"},\"wordCount\":1717,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/sonra.io\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/sonra.io\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/XML-Conversion-Using-Python.jpeg\",\"articleSection\":[\"XML\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/\",\"url\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/\",\"name\":\"XML Conversion Using Python in 2026\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/sonra.io\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/sonra.io\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/XML-Conversion-Using-Python.jpeg\",\"datePublished\":\"2024-03-21T12:40:05+00:00\",\"dateModified\":\"2026-04-27T13:57:20+00:00\",\"description\":\"From Manual XML conversions through Python to Automated conversions of Complex XML files, Find out the most reliable ways in 2026.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/#primaryimage\",\"url\":\"https:\\\/\\\/sonra.io\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/XML-Conversion-Using-Python.jpeg\",\"contentUrl\":\"https:\\\/\\\/sonra.io\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/XML-Conversion-Using-Python.jpeg\",\"width\":700,\"height\":394,\"caption\":\"XML Conversion Using Python\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/sonra.io\\\/xml-conversion-using-python\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/sonra.io\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"XML\",\"item\":\"https:\\\/\\\/sonra.io\\\/category\\\/xml\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"XML Conversion Using Python in 2026\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/sonra.io\\\/#website\",\"url\":\"https:\\\/\\\/sonra.io\\\/\",\"name\":\"Sonra\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/sonra.io\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/sonra.io\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/sonra.io\\\/#organization\",\"name\":\"Sonra\",\"alternateName\":\"Sonra.io\",\"url\":\"https:\\\/\\\/sonra.io\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/sonra.io\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/sonra.io\\\/wp-content\\\/uploads\\\/2015\\\/02\\\/sonra-logo-circle.png\",\"contentUrl\":\"https:\\\/\\\/sonra.io\\\/wp-content\\\/uploads\\\/2015\\\/02\\\/sonra-logo-circle.png\",\"width\":600,\"height\":600,\"caption\":\"Sonra\"},\"image\":{\"@id\":\"https:\\\/\\\/sonra.io\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/sonra.io\\\/#\\\/schema\\\/person\\\/f6961e781666bffd0142c5ccc300f219\",\"name\":\"Maciek\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f1f4c86b9824a4e747832130d9194894903c6c4d8171ae528624afefcabea1b1?s=96&d=https%3A%2F%2Fsonra.io%2Fwp-content%2Fuploads%2F2023%2F04%2FScreenshot_15-removebg-preview.png&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f1f4c86b9824a4e747832130d9194894903c6c4d8171ae528624afefcabea1b1?s=96&d=https%3A%2F%2Fsonra.io%2Fwp-content%2Fuploads%2F2023%2F04%2FScreenshot_15-removebg-preview.png&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f1f4c86b9824a4e747832130d9194894903c6c4d8171ae528624afefcabea1b1?s=96&d=https%3A%2F%2Fsonra.io%2Fwp-content%2Fuploads%2F2023%2F04%2FScreenshot_15-removebg-preview.png&r=g\",\"caption\":\"Maciek\"},\"url\":\"https:\\\/\\\/sonra.io\\\/author\\\/maciek\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"XML Conversion Using Python in 2026","description":"From Manual XML conversions through Python to Automated conversions of Complex XML files, Find out the most reliable ways in 2026.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/sonra.io\/xml-conversion-using-python\/","og_locale":"en_US","og_type":"article","og_title":"XML Conversion Using Python in 2026","og_description":"From Manual XML conversions through Python to Automated conversions of Complex XML files, Find out the most reliable ways in 2026.","og_url":"https:\/\/sonra.io\/xml-conversion-using-python\/","og_site_name":"Sonra","article_published_time":"2024-03-21T12:40:05+00:00","article_modified_time":"2026-04-27T13:57:20+00:00","og_image":[{"width":700,"height":394,"url":"https:\/\/sonra.io\/wp-content\/uploads\/2024\/03\/XML-Conversion-Using-Python.jpeg","type":"image\/jpeg"}],"author":"Maciek","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Maciek","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/sonra.io\/xml-conversion-using-python\/#article","isPartOf":{"@id":"https:\/\/sonra.io\/xml-conversion-using-python\/"},"author":{"name":"Maciek","@id":"https:\/\/sonra.io\/#\/schema\/person\/f6961e781666bffd0142c5ccc300f219"},"headline":"XML Conversion Using Python in 2026","datePublished":"2024-03-21T12:40:05+00:00","dateModified":"2026-04-27T13:57:20+00:00","mainEntityOfPage":{"@id":"https:\/\/sonra.io\/xml-conversion-using-python\/"},"wordCount":1717,"commentCount":0,"publisher":{"@id":"https:\/\/sonra.io\/#organization"},"image":{"@id":"https:\/\/sonra.io\/xml-conversion-using-python\/#primaryimage"},"thumbnailUrl":"https:\/\/sonra.io\/wp-content\/uploads\/2024\/03\/XML-Conversion-Using-Python.jpeg","articleSection":["XML"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/sonra.io\/xml-conversion-using-python\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/sonra.io\/xml-conversion-using-python\/","url":"https:\/\/sonra.io\/xml-conversion-using-python\/","name":"XML Conversion Using Python in 2026","isPartOf":{"@id":"https:\/\/sonra.io\/#website"},"primaryImageOfPage":{"@id":"https:\/\/sonra.io\/xml-conversion-using-python\/#primaryimage"},"image":{"@id":"https:\/\/sonra.io\/xml-conversion-using-python\/#primaryimage"},"thumbnailUrl":"https:\/\/sonra.io\/wp-content\/uploads\/2024\/03\/XML-Conversion-Using-Python.jpeg","datePublished":"2024-03-21T12:40:05+00:00","dateModified":"2026-04-27T13:57:20+00:00","description":"From Manual XML conversions through Python to Automated conversions of Complex XML files, Find out the most reliable ways in 2026.","breadcrumb":{"@id":"https:\/\/sonra.io\/xml-conversion-using-python\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sonra.io\/xml-conversion-using-python\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sonra.io\/xml-conversion-using-python\/#primaryimage","url":"https:\/\/sonra.io\/wp-content\/uploads\/2024\/03\/XML-Conversion-Using-Python.jpeg","contentUrl":"https:\/\/sonra.io\/wp-content\/uploads\/2024\/03\/XML-Conversion-Using-Python.jpeg","width":700,"height":394,"caption":"XML Conversion Using Python"},{"@type":"BreadcrumbList","@id":"https:\/\/sonra.io\/xml-conversion-using-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/sonra.io\/"},{"@type":"ListItem","position":2,"name":"XML","item":"https:\/\/sonra.io\/category\/xml\/"},{"@type":"ListItem","position":3,"name":"XML Conversion Using Python in 2026"}]},{"@type":"WebSite","@id":"https:\/\/sonra.io\/#website","url":"https:\/\/sonra.io\/","name":"Sonra","description":"","publisher":{"@id":"https:\/\/sonra.io\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sonra.io\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/sonra.io\/#organization","name":"Sonra","alternateName":"Sonra.io","url":"https:\/\/sonra.io\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sonra.io\/#\/schema\/logo\/image\/","url":"https:\/\/sonra.io\/wp-content\/uploads\/2015\/02\/sonra-logo-circle.png","contentUrl":"https:\/\/sonra.io\/wp-content\/uploads\/2015\/02\/sonra-logo-circle.png","width":600,"height":600,"caption":"Sonra"},"image":{"@id":"https:\/\/sonra.io\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/sonra.io\/#\/schema\/person\/f6961e781666bffd0142c5ccc300f219","name":"Maciek","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f1f4c86b9824a4e747832130d9194894903c6c4d8171ae528624afefcabea1b1?s=96&d=https%3A%2F%2Fsonra.io%2Fwp-content%2Fuploads%2F2023%2F04%2FScreenshot_15-removebg-preview.png&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f1f4c86b9824a4e747832130d9194894903c6c4d8171ae528624afefcabea1b1?s=96&d=https%3A%2F%2Fsonra.io%2Fwp-content%2Fuploads%2F2023%2F04%2FScreenshot_15-removebg-preview.png&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f1f4c86b9824a4e747832130d9194894903c6c4d8171ae528624afefcabea1b1?s=96&d=https%3A%2F%2Fsonra.io%2Fwp-content%2Fuploads%2F2023%2F04%2FScreenshot_15-removebg-preview.png&r=g","caption":"Maciek"},"url":"https:\/\/sonra.io\/author\/maciek\/"}]}},"_links":{"self":[{"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/posts\/23778","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/users\/29"}],"replies":[{"embeddable":true,"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/comments?post=23778"}],"version-history":[{"count":66,"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/posts\/23778\/revisions"}],"predecessor-version":[{"id":28351,"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/posts\/23778\/revisions\/28351"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/media\/23827"}],"wp:attachment":[{"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/media?parent=23778"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/categories?post=23778"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sonra.io\/wp-json\/wp\/v2\/tags?post=23778"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}