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

如何使用BeautifulSoup提取div内嵌套的指定class div的文本并拼接

BeautifulSoup 嵌套div文本提取实现方案

你已经定位到了class="claim"的父级节点,只需要在该节点范围内检索所有子级claim-text类div,再提取文本拼接即可,完整代码如下:

import requests
from bs4 import BeautifulSoup

url = 'https://patents.google.com/patent/AU2016304408B2/en'
# 可选添加请求头,避免网站反爬拦截
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36'
}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.content, 'html.parser')

# 定位父级claim节点
claim_root = soup.find(class_="claim", num="1")
# 查找父节点下所有class为claim-text的div元素
claim_text_list = claim_root.find_all('div', class_="claim-text")
# 提取所有文本并拼接,可根据需求调整分隔符(换行、空格等)
full_text = '\n'.join([item.get_text() for item in claim_text_list])

print(full_text)

逻辑说明

  • find_all方法可以在任意BeautifulSoup节点上调用,只会检索该节点的后代元素,不需要重新从整个网页源码中检索,精准度和效率更高
  • get_text()方法会自动提取标签内的所有文本内容,自动合并嵌套的<sup>、<sub>等标签内的字符,不需要额外处理嵌套标签
  • 若需要去除文本前后的空白字符,可以将item.get_text()替换为item.get_text(strip=True),拼接符也可替换为空格' '得到无换行的连续字符串

内容的提问来源于stack exchange,提问作者Bernie Zhu

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.18 18:54:04