OS走异常处理
OS Walk Exception handling
我在异常处理方面不是很有经验。我知道我的代码到达文件路径中具有“存档”的目录并查看某些文件时会遇到一种类型的错误。在文件搜索中,有一些文件保存为二进制文件,当它通过解析它时,它会给出“ParseError:格式不正确(无效令牌):第 1 行,第 0 列”。这是什么类型的异常,我该如何定义这个异常?我也不知道 python 文档的正确位置。 https://docs.python.org/3/library/exceptions.html#exception-hierarchy
import os
import xml.etree.ElementTree as ET
current_dur = r'Defined Contributions'
for root, dirs, files in os.walk(current_dur):
for file in files:
if file.endswith('.ldm') or file.endswith('.cdm') or file.endswith('.pdm'):
full_file_name = os.path.join(root, file)
print(os.path.join(root,file))
#for i in file_results:
#WE are parseing it.
tree = ET.parse(full_file_name)
#We then get the root.
#Maybe
gotten_root = tree.getroot()
for elm in gotten_root.findall('.//{object}IntraModelReport'):
print(elm.text)
for Model in gotten_root.findall('.//{object}IntraModelReport'):
rootId = elm.attrib
file_Name = Model.find("{attribute}Code").text
unique_ID = Model.find("{attribute}ObjectID").text
employee_badge = Model.find("{attribute}Creator").text
print( file_Name, unique_ID, employee_badge)
捕获异常并继续。
参见 https://docs.python.org/3/library/xml.etree.elementtree.html#exceptions
try:
tree = ET.parse(full_file_name)
except xml.etree.ElementTree.ParseError:
print(f'Invalid xml: {full_file_name}')
continue
我在异常处理方面不是很有经验。我知道我的代码到达文件路径中具有“存档”的目录并查看某些文件时会遇到一种类型的错误。在文件搜索中,有一些文件保存为二进制文件,当它通过解析它时,它会给出“ParseError:格式不正确(无效令牌):第 1 行,第 0 列”。这是什么类型的异常,我该如何定义这个异常?我也不知道 python 文档的正确位置。 https://docs.python.org/3/library/exceptions.html#exception-hierarchy
import os
import xml.etree.ElementTree as ET
current_dur = r'Defined Contributions'
for root, dirs, files in os.walk(current_dur):
for file in files:
if file.endswith('.ldm') or file.endswith('.cdm') or file.endswith('.pdm'):
full_file_name = os.path.join(root, file)
print(os.path.join(root,file))
#for i in file_results:
#WE are parseing it.
tree = ET.parse(full_file_name)
#We then get the root.
#Maybe
gotten_root = tree.getroot()
for elm in gotten_root.findall('.//{object}IntraModelReport'):
print(elm.text)
for Model in gotten_root.findall('.//{object}IntraModelReport'):
rootId = elm.attrib
file_Name = Model.find("{attribute}Code").text
unique_ID = Model.find("{attribute}ObjectID").text
employee_badge = Model.find("{attribute}Creator").text
print( file_Name, unique_ID, employee_badge)
捕获异常并继续。
参见 https://docs.python.org/3/library/xml.etree.elementtree.html#exceptions
try:
tree = ET.parse(full_file_name)
except xml.etree.ElementTree.ParseError:
print(f'Invalid xml: {full_file_name}')
continue