python - BeautifulSoup 获得标签.id

标签 python html beautifulsoup html-parsing

我正在尝试从页面获取 div id 列表。当我打印出属性时,我得到了列出的 ID。

for tag in soup.find_all(class_="bookmark blurb group") :
  print(tag.attrs)

结果:

{'id': 'bookmark_8199633', 'role': 'article', 'class': ['bookmark', 'blurb', 'group']}
{'id': 'bookmark_7744613', 'role': 'article', 'class': ['bookmark', 'blurb', 'group']}
{'id': 'bookmark_7338591', 'role': 'article', 'class': ['bookmark', 'blurb', 'group']}
{'id': 'bookmark_7338535', 'role': 'article', 'class': ['bookmark', 'blurb', 'group']}
{'id': 'bookmark_4530078', 'role': 'article', 'class': ['bookmark', 'blurb', 'group']}

所以我知道有 ID。但是,当我打印出 tag.id 时,我只得到一个“无”列表。我在这里做错了什么?

最佳答案

您可以通过将标签视为字典 (documentation) 来访问标签的属性:

for tag in soup.find_all(class_="bookmark blurb group") :
    print tag.get('id')

tag.id 不起作用的原因是它等同于 tag.find('id'),结果为 None 因为没有找到 id 标签 ( documentation )。

关于python - BeautifulSoup 获得标签.id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24962673/

相关文章:

python - makemigrations reponses 指定 app_label 时未检测到任何更改

html - 具有可变高度的 3 切片扩展图像

html - IE 如果达到最大宽度,则将表格单元格移至新行

Python、Selenium、BS4 - 导航到下一页

python - 如何获取CNN的主要头条新闻?

python - 过滤/子请求以获得结果

python - 从 httplib.HTTP(s)Connection 继承时处理 SSL 和非 SSL 连接

python - 使用 BatchElements 进行批处理在 DirectRunner 和 DataflowRunner (GCP/Dataflow) 中的工作方式不同

javascript - 仅用于浏览器关闭的确认消息。不在窗口选项卡关闭时

python - 使用 Python 和 BeautifulSoup 的 Webscrape - 错误消息不确定如何修复