首页 > 解决方案 > 使用 Beautifulsoup 获取特定属性

问题描述

我想使用 beautifulsoup 从 HTML 标记中提取属性。怎么做 ?

例如:

<div class="search-pagination-top clearfix  mtop ">
                                            <div class="row"><div class="col-l-4 mtop pagination-number" tabindex="0"
aria-label="Page 1 of 15 "><div>Page <b>1</b> of <b>15</b> </div></div>

如何从“aria-label”属性中获取文本?

我尝试使用 select() 但没有帮助。

标签: pythonhtmlbeautifulsoup

解决方案


您可以像字典一样提取属性值。使用钥匙aria-label

前任:

from bs4 import BeautifulSoup

html = """<div class="search-pagination-top clearfix  mtop ">
                                            <div class="row"><div class="col-l-4 mtop pagination-number" tabindex="0"
aria-label="Page 1 of 15 "><div>Page <b>1</b> of <b>15</b> </div></div>
"""

soup = BeautifulSoup(html, "html.parser")
print( soup.find("div", class_="col-l-4 mtop pagination-number")["aria-label"] )

输出:

Page 1 of 15 

推荐阅读