从页面[Beautiful soup]中的所有标签获取所有属性

2024-05-14 23:00:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我想通过漂亮的汤获得html页面中每个标签的所有属性 在一个数组中

例如,我有一个html页面 我想要一个字符串数组中的所有标记属性

<div att0="content1">
<a href="link1">link data</a>
</div>

结果是: [内容1,链接1]


Tags: 字符串标记div内容data属性htmllink
2条回答

查找所有元素并从^{} attribute获取属性:

attrs = []
for elm in soup():  # soup() is equivalent to soup.find_all()
    attrs += list(elm.attrs.values())

print(attrs)

演示:

^{pr2}$
import bs4

html = '''
<div att0="content1">
<a href="link1">link data</a>
</div>
<div att0="content1">
<a href="link1">link data</a>
</div>
<div att0="content1">
<a href="link1">link data</a>
</div>'''

soup = bs4.BeautifulSoup(html, 'lxml')

for div in soup.find_all('div', att0=True):
    out = [div['att0'], div.a['href']]
    print(out)

输出:

^{pr2}$

相关问题 更多 >

    热门问题