Python Beautifulsoup 获取属性值

4

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

因此,我使用正确的语法在我的中分离出一个标签的出现,但是有一个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",但是无法获得正确的语法。

请求帮助和建议。


你可以从元素中获取属性值,查看这个 - Max Jevachkin
1个回答

7

您可以使用键值对访问属性。

例如:

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

有趣。那么再解析一次吗?(我使用了解析器,未显示,以获取soup - Windstorm1981
1
所以我尝试使用这个语法:print(date.span["data-datenews"]),但是我得到了TypeError: 'NoneType' object has no attribute '__getitem__'的错误。而print(date["data-datenews"])却可以正常工作。为什么呢? - Windstorm1981
你需要先找到 span 标签。 - Rakesh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接