我有一个坐标如下的xml:
<geo>
<lat>52.5025100</lat>
<lng>13.3086000</lng>
</geo>
我可以解析第一个和第二个孩子的字符串(存储在列表中),如下所示:
child_1=soup.find('geo').contents[1].get_text(strip=True)
child_2=soup.find('geo').contents[3].get_text(strip=True)
假设我必须处理多个文件,并且我不确定lat和long是否总是以上述顺序出现,索引不起作用,因为它不可靠。而不是这个,我想解析lat和long作为geo
的孩子的标签名称。
这不起作用:
child_1=soup.find('geo').contents('lat').get_text(strip=True)
那么我怎么能实现这个目标呢?
注意:lat
和long
在文档中多次出现。因此,我无法直接解析lat
和long
答案 0 :(得分:3)
您可以使用tag name:
直接访问节点的子元素geo = soup.find('geo')
print geo.lat.get_text(strip=True)
print geo.lng.get_text(strip=True)