从类内部提取id

2024-04-26 13:12:17 发布

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

我在用beautiful做网页抓取。当我使用findall提取类变量时,我得到的是一个数据数组

我的问题是如何从提取的值中提取id值。我试了试标签。但这并没有多大帮助

我需要以下输出

measurement_a000_20c0_0002

数据[0]

<td class="measurement">
<div id="measurement_a000_20c0_0002">0.0</div>
</td>

Tags: 数据divid网页标签数组classtd
1条回答
网友
1楼 · 发布于 2024-04-26 13:12:17

根据您的示例,只需找到元素,然后使用get id属性element['id']

from bs4 import BeautifulSoup
html='''<td class="measurement">
<div id="measurement_a000_20c0_0002">0.0</div>
</td>'''

soup=BeautifulSoup(html,"html.parser")
for item in soup.select(".measurement >div "):
    print(item['id'])

如果要使用find_all(),请尝试以下方法

from bs4 import BeautifulSoup
html='''<td class="measurement">
<div id="measurement_a000_20c0_0002">0.0</div>
</td>'''

soup=BeautifulSoup(html,"html.parser")
for item in soup.find_all("td" , class_="measurement"):
    print(item.find_next('div')['id'])

相关问题 更多 >