嗨我在抓取标签中的某些内容时有疑问。 通过bs4,我可以在下面的div标签之前联系。 但我真正需要的是data-lat和data-lng。那些不是文本所以我不能使用get_text()和 我不确定bs4中的哪个辅助函数可以提取标记中的内部数据。
<div id="map" class="main_content embedded-content" data-lat="37.542560322393925"
data-lng="127.01606371950948">
答案 0 :(得分:5)
您可以选择div元素,然后通过attrs属性
获取其所有属性>>> from bs4 import BeautifulSoup
>>>
>>> html = """<div id="map" class="main_content embedded-content" data-lat="37.542560322393925" data-lng="127.01606371950948">"""
>>> soup = BeautifulSoup(html)
>>> div = soup.find("div", id = 'map')
>>> div.attrs
{'data-lng': '127.01606371950948', 'data-lat': '37.542560322393925', 'id': 'map', 'class': ['main_content', 'embedded-content']}
>>> div.attrs.get('data-lng',0.0)
'127.01606371950948'
>>> div.attrs.get('data-lat',0.0)
'37.542560322393925'