मेरे पास एक डमी एक्सएमएल फ़ाइल है,

<?xml version="1.0" encoding="UTF-8"?>
<hello xmlns="abc">
<inside>
  <ok>xyz</ok>
</inside>
</hello>
<?xml version="1.0" encoding="UTF-8"?>
  <xyz xmlns="acxd">
  </xyz>
<?xml version="1.0" encoding="UTF-8"?>
<zz xmlns="zmrt">
</zz>
]]>]]>

और मैं निम्नलिखित कोड का उपयोग करके इस एक्सएमएल फ़ाइल को पार्स करने की कोशिश कर रहा हूं।

import xml.etree.ElementTree as ET
mytree = ET.parse(temp_xml)

मुझे जो त्रुटि मिल रही है वह "ParseError: junk after document element: line 7, column 0" है। मैंने ']]>]]>' यानी लाइन 7 को हटाने की कोशिश की लेकिन फिर भी मुझे वही त्रुटि मिल रही है यानी "ParseError: junk after document element: line 8, column 0"। क्या ऐसी त्रुटि से निपटने का कोई तरीका है या हम ऐसी पंक्तियों को पढ़ना छोड़ सकते हैं जहां जंक डेटा है?

enter image description here

1
Shaji Thorn Blue 15 सितंबर 2020, 17:23

1 उत्तर

सबसे बढ़िया उत्तर

XML दस्तावेज़ में केवल एक ही मूल तत्व हो सकता है। आपके पास तीन हैं और इसलिए अच्छी तरह से गठित नहीं है . यदि आप एक्सएमएल टूल्स का उपयोग करके इसे पार्स करना चाहते हैं, तो आपको पहले, मैन्युअल रूप से या प्रोग्रामेटिक रूप से, मूल तत्वों को अपने दस्तावेज़ों में अलग करना होगा।

ध्यान दें कि एक XML दस्तावेज़ में अधिकतम एक XML घोषणा (<?xml version="1.0" encoding="UTF-8"?>) भी हो सकती है, और यदि यह मौजूद है, तो यह फ़ाइल के शीर्ष पर होना चाहिए।

यह भी देखें

2
kjhughes 15 सितंबर 2020, 19:31