为了账号安全,请及时绑定邮箱和手机立即绑定

在 BeautifulSoup 中获取类中的第一个强标签

在 BeautifulSoup 中获取类中的第一个强标签

茅侃侃 2023-04-18 15:59:57
我试图浏览一个包含 100 个项目的列表,并且只从每个列表项目中的类中获取第一个强标签(有些有 1 个,有些有超过 1 个)。在我试过的代码中,它获取所有带有强标签的项目,而不是总共 100 个项目,它获得 128 个项目。这是我的代码:for i in range(100):     artist = soup.find_all("strong" , {"class" : "chartItem-artist-artistName"})[i].getText()         print(artist)这是被网络抓取的 HTML 代码: HTML 代码的屏幕截图我定位的课程以红色突出显示 (chartItem-artist-artistInfo)我试图拉取的项目以蓝色突出显示(只有第一个强标签)我只想获得“DaBaby”而不是“&”或“Stunna 4 Vegas”
查看完整描述

2 回答

?
慕少森

TA贡献2019条经验 获得超9个赞

尝试替换:


for i in range(100):

    artist = soup.find_all("strong" , {"class" : "chartItem-artist-artistName"})[i].getText()

    print(artist)

和:


artists = soup.select('div.chartItem-artist-info strong:nth-child(1)')

for artist in artists:

    print(artist.get_text())


查看完整回答
反对 回复 2023-04-18
?
慕慕森

TA贡献1856条经验 获得超17个赞

<strong>这将从下面的第一个元素获取文本class="chartItem-artist-info"

for t in soup.select('.chartItem-artist-info'):
    artist = t.strong.get_text() 
       print(artist)


查看完整回答
反对 回复 2023-04-18
  • 2 回答
  • 0 关注
  • 118 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信