我想做下面的代码,这是 BS 文档所说的,唯一的问题是“类”这个词不仅仅是一个词。它可以在 HTML 中找到,但它也是一个导致此代码抛出错误的 python 关键字。
那么我该如何做以下事情呢?
soup.findAll('ul', class="score")
我想做下面的代码,这是 BS 文档所说的,唯一的问题是“类”这个词不仅仅是一个词。它可以在 HTML 中找到,但它也是一个导致此代码抛出错误的 python 关键字。
那么我该如何做以下事情呢?
soup.findAll('ul', class="score")
您的问题似乎是您希望find_all
在汤中找到与您的字符串完全匹配的字符串。事实上:
当您搜索与某个 CSS 类匹配的标签时,您将匹配其任何 CSS 类:
正如@alKid 所说,您可以正确搜索类标签。您也可以使用class_
关键字 arg 进行搜索。
soup.find_all('ul', class_="score")
这是如何做到的:
soup.find_all('ul', {'class':"score"})
如果 OP 有兴趣finalScore
通过ul
您可以通过几行gazpacho来解决这个问题:
from gazpacho import Soup
html = """\
<div>
<ul class="score header" id="400488971-linescoreHeader" style="display: block">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li id="400488971-lshot"> </li>
<li class="finalScore">T</li>
</ul>
<div>
"""
soup = Soup(html)
soup.find("ul", {"class": "score"}).find("li", {"class": "finalScore"}).text
这将输出:
'T'