0
我想解析給定文件夾/子文件夾中的所有XML文件,並搜索並替換該XML內的文本。同時排除子文件夾「存檔」。我得到的錯誤「AttributeError:'NoneType'對象沒有屬性'替換'」不知道我錯過了什麼,但是我的循環似乎死了一旦它到達ElementTree來打開和解析XML。遞歸解析所有XML文件並排除文件夾
for roots, dirs, files in os.walk("C:\test", topdown=True):
if 'Archive' in dirs:
dirs.remove('Archive')
#dirs[:] = [d for d in dirs if 'Archive' not in d]
for f in files:
if f.endswith('.xml'):
try:
with open(os.path.join(roots, f), 'r') as xml:
tree = ET.parse(xml)
root = tree.getroot()
for elem in root.getiterator():
try:
print (elem.text)
elem.text = elem.text.replace('_THUMBNAIL.jpg', '.mxd.jpg')
except ET.ParseError:
pass
tree.write(xml, encoding='utf-8')
except FileNotFoundError:
pass
嗯沒有骰子。這似乎忽略了一切。 – Infinity8
你可以顯示你的xml的一小部分嗎?看起來很奇怪。 – VdF