如何检查 XML 中是否包含某个属性?
How to check if an Attribute is contained in XML?
我收到 KeyError: 'About Me'
。我发现 Whosebug for Users 的转储数据包含一些没有 AboutMe 变量的用户。通过 xml['AboutMe'] 的迭代工作正常。但是如果某些用户没有 AboutMe 变量,脚本会崩溃并给我一个 KeyError。
我尝试检查是否包含 AboutMe。如果是,它应该在没有 HTML 标记的情况下打印 AboutMe。
如果不包含。它应该将值 None 分配给此条目。
那是我的代码:
if element['AboutMe'] is not None:
cleanAboutMe = BeautifulSoup(element['AboutMe'], "lxml").text
print(cleanAboutMe)
else:
element = {'AboutMe':'None'}
我得到的输出:
This is a puppet test account I use to validate "regular user" stuff on the site
-- Jeff Atwood
Independent software engineer
I'm not takin' my sneakers off!
if element['AboutMe'] is not None:
KeyError: 'AboutMe'
希望大家帮帮忙。我搜索并尝试了 Whosebug 中的每个问题,但 None 帮助了我。我每次都会遇到这个关键错误。
注意事项:变量 Element 确实工作正常,但如果我指向 AboutMe 键,则会出现错误。
此致
Theeninfam
如果元素可能没有该属性,请使用 element.get('AboutMe')
获取属性值,如果属性不存在,则使用 None。 get
是 ElementTree 实现的标准函数。 https://docs.python.org/3/library/xml.etree.elementtree.html#xml.etree.ElementTree.Element.get
我收到 KeyError: 'About Me'
。我发现 Whosebug for Users 的转储数据包含一些没有 AboutMe 变量的用户。通过 xml['AboutMe'] 的迭代工作正常。但是如果某些用户没有 AboutMe 变量,脚本会崩溃并给我一个 KeyError。
我尝试检查是否包含 AboutMe。如果是,它应该在没有 HTML 标记的情况下打印 AboutMe。
如果不包含。它应该将值 None 分配给此条目。
那是我的代码:
if element['AboutMe'] is not None:
cleanAboutMe = BeautifulSoup(element['AboutMe'], "lxml").text
print(cleanAboutMe)
else:
element = {'AboutMe':'None'}
我得到的输出:
This is a puppet test account I use to validate "regular user" stuff on the site
-- Jeff Atwood
Independent software engineer
I'm not takin' my sneakers off!
if element['AboutMe'] is not None:
KeyError: 'AboutMe'
希望大家帮帮忙。我搜索并尝试了 Whosebug 中的每个问题,但 None 帮助了我。我每次都会遇到这个关键错误。
注意事项:变量 Element 确实工作正常,但如果我指向 AboutMe 键,则会出现错误。
此致
Theeninfam
如果元素可能没有该属性,请使用 element.get('AboutMe')
获取属性值,如果属性不存在,则使用 None。 get
是 ElementTree 实现的标准函数。 https://docs.python.org/3/library/xml.etree.elementtree.html#xml.etree.ElementTree.Element.get