2017-01-30 108 views
0

我该如何去获取标签下的值?我期待在python中使用BeautifulSoup4返回'-6.43798'。用BS4解析XML文件

<html><body><maggridresult> 
<version> 
0.5.0.7 
</version> 
<result> 
<date> 
2017.07671 
</date> 
<latitude units="degree"> 
42.26042 
</latitude> 
<longitude units="degree"> 
-84.46044 
</longitude> 
<elevation units="km"> 
0.00000 
</elevation> 
<declination units="degree"> 
-6.43798 
</declination> 
<declination_sv units="degree"> 
-0.03752 
</declination_sv> 
<declination_uncertainty units="degree"> 
0.37303 
</declination_uncertainty> 
</result> 
</maggridresult> 
</body></html> 

我认为它与查找或找到所有功能有关,但我不知道具体如何实现它。

谢谢!

+0

'soup.find('declination')。text' – furas

回答

3
import bs4 
html = """your html""" 

soup = bs4.BeautifulSoup(html, 'lxml') 
soup.find('declination').get_text(strip=True) # strip white-space 

出来:

'-6.43798' 

find使用标签名称和标记属性作为过滤器。