Python将所有类都刮去并打印出来

2024-09-29 23:30:44 发布

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

所以我一直在尝试从一个HTML站点中获取数据,基本上看起来像

</div>
<div class="sizedata">
<a class="selectData" data-branch-on="1" data-size="11" data-ifno="105124" id="25096">

                    </a>
</div>
<div class="sizedata">
<a class="selectData" data-branch-on="1" data-size="12" data-ifno="173445" id="25097">

                    </a>

我已经努力了好几个小时,我知道我很接近,但还不够!你知道吗

所以我一直想做的是

test = soup1.find('div', {'sizedata': 'data-size'})
print(test)

但它给它的只是空洞的说“没有”,我只是疯了,现在我不知道该做什么了刮出来!也许我遗漏了什么?基本上我想做的就是打印出来

Data1-数据大小 数据2-数据大小 数据3-数据大小(对于所有数据而言,数据大小是指基本上存在的每个div。你知道吗


Tags: 数据testdivbranchiddatasize站点
1条回答
网友
1楼 · 发布于 2024-09-29 23:30:44

在属性中使用class="sizedata"。你知道吗

例如:

s = """
<div class="sizedata">
    <a class="selectData" data-branch-on="1" data-size="11" data-ifno="105124" id="25096"></a>
</div>
<div class="sizedata">
    <a class="selectData" data-branch-on="1" data-size="12" data-ifno="173445" id="25097"></a>
</div>"""

from bs4 import BeautifulSoup
soup = BeautifulSoup(s, "html.parser")
print(soup.find_all('div', {'class': 'sizedata'}))

输出

[<div class="sizedata">\n<a class="selectData" data-branch-on="1" data-ifno="105124" data-size="11" id="25096"></a>\n</div>, <div class="sizedata">\n<a class="selectData" data-branch-on="1" data-ifno="173445" data-size="12" id="25097"></a>\n</div>]

根据评论编辑(查找所有“数据大小”属性)

print([item for item in soup.find_all() if "data-size" in item.attrs])
print([item["data-size"] for item in soup.find_all() if "data-size" in item.attrs])   #Just to get the data-size value

相关问题 更多 >

    热门问题