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

使用BeautifulSoup4提取href属性与ID值时遇属性错误求助

问题解决:提取标签href及父

错误原因

soup.find_all('a')返回的是ResultSet对象(即元素列表),直接对这个列表调用find()或attrs会报错,因为列表没有这些属性/方法,必须遍历列表中的每个元素逐个处理。

修正后的代码

from bs4 import BeautifulSoup

htmltext = ''' <div class="sidenav">
         <div class="sidenav-head" id="InsertNameHere">   
          <a href="/groups/1234123/">
           InsertNameHere
          </a>
         </div>
         <!-- 新增测试用的多组标签 -->
         <div class="sidenav-head" id="AnotherGroupID">   
          <a href="/groups/567890/">
           AnotherGroupName
          </a>
         </div>
        </div>'''
 
soup = BeautifulSoup(htmltext, 'html.parser')

# 获取所有<a>标签,保留批量抓取能力
all_links = soup.find_all('a')

# 遍历每个<a>元素处理
for a_tag in all_links:
    # 用get方法获取href,避免标签无href时抛出KeyError
    href = a_tag.get('href')
    # 获取父级<div>的ID,同样用get方法兼容无id的情况
    parent_div_id = a_tag.parent.get('id')
    
    print(f"链接地址: {href}, 父级div的ID: {parent_div_id}")

关键说明

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 14:27:38