【问题标题】:Python Beautifulsoup Getting Attribute ValuePython Beautifulsoup 获取属性值
【发布时间】:2018-11-05 02:22:39
【问题描述】:

我在使用 HTML 5.0 获取 Beautifulsoup 中属性值的正确语法时遇到了困难。

所以我已经在我的soup 中使用正确的语法隔离了标签的出现,其中存在 HTML 5 问题:

tags = soup.find_all(attrs={"data-topic":"recUpgrade"})

只取标签[1]:

date = tags[1].find(attrs={"data-datenews":True})

这里的日期是:

<span class="invisible" data-datenews="2018-05-25 06:02:19" data-idnews="2736625" id="horaCompleta"></span>

但现在我想提取日期时间“2018-05-25 06:02:19”。无法获取语法。

请提供见解/帮助。

【问题讨论】:

  • 可以从元素中获取属性值,查看this

标签: python beautifulsoup


【解决方案1】:

您可以使用键值对访问 attrs

例如:

from bs4 import BeautifulSoup
s = """<span class="invisible" data-datenews="2018-05-25 06:02:19" data-idnews="2736625" id="horaCompleta"></span>"""
soup = BeautifulSoup(s, "html.parser")
print(soup.span["data-datenews"])

输出:

2018-05-25 06:02:19

【讨论】:

  • 有趣。所以再解析一下? (我使用未显示的解析器来获取“汤”)
  • 所以我尝试了这个语法:print(date.span["data-datenews"]),我得到了TypeError: 'NoneType' object has no attribute '__getitem__'print(date["data-datenews"]) 有效。为什么?
  • 需要先找到span标签
猜你喜欢
  • 2016-09-19
  • 2017-08-28
  • 2013-09-14
  • 2015-08-28
  • 1970-01-01
  • 1970-01-01
  • 2010-12-13
  • 2011-02-06
相关资源
最近更新 更多