Я пишу код на python для проверки XML-файла на XSD с использованием библиотеки lxml.Но когда мой assertValid () запускается, выполнение останавливается при первой ошибке проверки XML в файле.Но мне нужен мой код для продолжения и итерации всего XML-файла, перехвата всех ошибок валидации и его консолидации.
Ниже приведен фрагмент кода, который я написал.
from lxml import etree
import time
def validatexml():
print("Inside the validatexml Function...!!!")
input_xml = 'Equipment_new.xml'
input_xsd = 'Equipment_new.xsd'
xmlschema_doc = etree.parse(input_xsd)
xmlschema = etree.XMLSchema(xmlschema_doc)
log = xmlschema.error_log
xml_doc = etree.parse(input_xml)
result = xmlschema.validate(xml_doc)
if result:
print("XML File is valid...!!!")
else:
print("Invalid XML file...!!!\r\n")
res = xmlschema.assertValid(xml_doc)
print(res)
def main():
print("Inside main method...!!!")
start = time.time()
print("Now calling the validatexml method...!!!")
validatexml()
end = time.time()
print("Total Execution Time::: %s seconds" %(end - start))
print("Exiting main method...!!!")
if __name__ == "__main__":
main()
Есть ли способ сделать это в Python?Я пытался использовать try / кроме, но это не помогло.Может ли кто-нибудь, пожалуйста, протянуть руку помощи этому.