You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用BeautifulSoup提取无class、id、name属性的div元素

BeautifulSoup 定位自定义属性div实现方案

你的目标<div grea>虽无class、id、name属性,但携带了自定义属性grea,直接用BeautifulSoup的属性匹配规则即可精准定位,提取目标文本的代码如下:

from bs4 import BeautifulSoup

# html_str 为你爬取到的完整网页源码字符串
soup = BeautifulSoup(html_str, 'html.parser') # html.parser为Python内置解析器,无需额外安装依赖

# 匹配所有带有grea属性的div元素
target_div = soup.find('div', attrs={'grea': True})
# 提取文本并去除首尾空白字符
book_wishes_text = target_div.get_text(strip=True)
print(book_wishes_text) # 输出结果为:Book Wishes

更稳定的可选方案

如果页面存在多个带grea属性的div,可结合父元素特征缩小匹配范围,进一步提升定位准确性:

# 先定位父级class为main的div
main_container = soup.find('div', class_='main')
# 再在父级范围内查找带grea属性的div
target_div = main_container.find('div', attrs={'grea': True})
book_wishes_text = target_div.h1.get_text(strip=True)

原理说明

attrs={'grea': True}的匹配规则为:只要元素携带grea属性即可匹配,不限制属性的具体取值,完美适配你当前场景中属性只有名称没有值的情况。

内容的提问来源于stack exchange,提问作者Jeffrey wang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 15:18:01