让我举一个例子:
from BeautifulSoup import BeautifulStoneSoup
root = ''' <all2>
<images>
<image>
<name> Picture </name>
<url> www.thing.com</url>
</image>
<image>
<name> Another one! </name>
</image>
</images>
</all2>
'''
soup = BeautifulStoneSoup(root)
for img in soup.all2.images.findAll("image"):
iname = img.i_name
iurl = img.url
print iname
print iurl
让标签是可选的。在这种情况下,第二次迭代将无法找到标记,并将抛出异常:
AttributeError:'NoneType'对象没有属性'renderContents'
如果没有出现可选标签,我希望iur为None。这可能吗?或者我的XML理解是错误的。
答案 0 :(得分:1)
'nameTag'你想要什么?
BeautifulSoup文档明确告诉您使用
iname = img.name.renderContents()
iurl = img.url.renderContents()
在这里发明新语法或语义的零理由