您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在Python中的span标记中查找多个属性

在Python中的span标记中查找多个属性

根据docs,假设Beautiful Soup 4匹配多个CSS类,且字符串类似,这'sp starGryB'很脆弱,不应该这样做:

soup.find_all('span', {'class': 'sp starGryB'})
# [<span class="sp starGryB">2.9</span>]
soup.find_all('span', {'class': 'starGryB sp'})
# []

应该使用CSS选择器代替,如下所示:

soup.select('span.sp.starGryB')
# [<span class="sp starGryB">2.9</span>]
soup.select('span.starGryB.sp')
# [<span class="sp starGryB">2.9</span>]

在您的情况下:

items = soup.select('span.sp.starGryB') + soup.select('span.sp.starBig')

或更复杂的东西:

items = [i for s in ['span.sp.starGryB', 'span.sp.starBig'] for i in soup.select(s)]
python 2022/1/1 18:33:02 有217人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶