如何检查XML文档是否具有标记" id"或不

时间:2017-09-11 15:47:01

标签: xml python-2.7

我试图找出一个标签" id"是否存在于我的数据中。 我有一个循环,将运行500310次从Flickr获取照片的详细信息。从这些细节,我获取照片的ID和所有者ID。现在,我正在使用这个" id"用另一种方法来获取照片的地理细节。但问题是如果某些照片没有属性" id"。 那么,任何人都可以告诉我如何检查属性" id"是否存在每张照片? 使用方法flickr.photos.search()后: 我们得到这样的数据:

<?xml version="1.0" encoding="utf-8" ?>
<rsp stat="ok">
<photos page="1" pages="2002" perpage="250" total="500310">
<photo id="35943698814" owner="21013862@N08" secret="b6d4735e47" 
server="4356" farm="5" title="Praha" ispublic="1" isfriend="0" isfamily="0" 
/>
</photos>
</rsp>

below is the link of image which contains code snippet

任何人都可以帮忙。

1 个答案:

答案 0 :(得分:0)

如果我们使用BeautifulSoup,我们可以使用has_attr来检查all(..) <photo>是否有id

if all(photo.has_attr('id') for photo in y.find_all('photo')):
    # all photos have an id
    pass
else:
    # there are photos without an id
    pass

您当然也可以使用特定照片上的.has_attr('id')来检查它是否有id。比如:

for photo in y.find_all('photo'):
    if photo.has_attr('id'):
        # the specific <photo> has an id
        pass
    else:
        # the specific <photo> has no id
        pass