Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การแยกวิเคราะห์ XML อย่างรวดเร็วโดยใช้ Expat ใน Python


Python อนุญาตให้อ่านและประมวลผลข้อมูล XML ผ่านโมดูล inbuilt ที่เรียกว่า expat มันเป็นตัวแยกวิเคราะห์ XML ที่ไม่ตรวจสอบความถูกต้อง มันสร้างอ็อบเจ็กต์ XML parser และจับคุณสมบัติของอ็อบเจ็กต์ลงในฟังก์ชันตัวจัดการต่างๆ ในตัวอย่างด้านล่าง เราจะมาดูกันว่าฟังก์ชันตัวจัดการต่างๆ สามารถช่วยเราอ่านไฟล์ XML ได้อย่างไร รวมทั้งให้ค่าแอตทริบิวต์เป็นข้อมูลผลลัพธ์ ข้อมูลที่สร้างขึ้นนี้สามารถใช้ในการประมวลผลได้

ตัวอย่าง

import xml.parsers.expat# ดักจับองค์ประกอบแรก first_element(แท็ก, attrs):พิมพ์ ('องค์ประกอบแรก:', แท็ก, attrs)# จับภาพองค์ประกอบสุดท้าย last_element (แท็ก):พิมพ์ ('องค์ประกอบสุดท้าย:' , แท็ก) # จับอักขระ Datadef character_value (ค่า):พิมพ์ ('ค่าอักขระ:', repr (ค่า))parser_expat =xml.parsers.expat.ParserCreate ()parser_expat.StartElementHandler =first_elementparser_expat.EndElementHandler =last_elementparser_expatler_character .Parse("""  มุ่งมั่นเพื่อความก้าวหน้า ไม่ใช่ความสมบูรณ์แบบ ไม่มีทางลัดไปยังที่ที่ควรไป""", 1)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

องค์ประกอบแรก:parent {'student_rollno':'15'}ค่าอักขระ:'\n'องค์ประกอบแรก:child1 {'Student_name':'Krishna'}ค่าอักขระ:'มุ่งมั่นเพื่อความก้าวหน้า ไม่ใช่ความสมบูรณ์แบบ' องค์ประกอบสุดท้าย:ค่าของ child1Character:'\n'องค์ประกอบแรก:child2 {'student_name':'vamsi'}ค่าอักขระ:' ไม่มีทางลัดไปยังที่ที่ควรค่าแก่การไป' องค์ประกอบสุดท้าย:ค่า child2Character:'\n'องค์ประกอบสุดท้าย:พาเรนต์