所以我一直在尝试从基本上看起来像
的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)
但它只是空洞的说法&#34;没有&#34;我现在刚刚变得疯狂,我不知道该怎么办才能把它刮掉!也许有些东西我错过了等等循环?基本上我想做的就是打印等等
Data1 - 数据大小 Data2 - 数据大小 Data3 - 数据大小(对于所有tehse数据大小,基本上都是每个div。
答案 0 :(得分:2)
在属性中使用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>]
根据评论进行修改 (查找所有&#39;数据大小&#39; attrs)
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