2016-02-18 30 views
0

我试图用美丽的汤迅速得到只有某些spans具有一定的阶级,我似乎无法按类进行搜索,但我可以通过ID搜索:由标签的class美丽的汤直接搜索

In [40]: last_a_tag = soup.find_all("a", id="link3") 

In [41]: spans = soup.find_all("span", class="iaLabel") 
    File "<ipython-input-41-c15da620dac2>", line 1 
    spans = soup.find("span", class="iaLabel") 
           ^
SyntaxError: invalid syntax 

这当然看起来不太合乎逻辑,但我在文档中看不到其他选择。我知道汤有attrs字典,我想快点。谢谢

+1

尝试'类_ = “iaLabel”'或'{ '类': “iaLabel” }'。 –

回答

1

您应该使用named参数class_而不是class。注意尾部下划线。

下面是来自bs4 docs的例子:

soup.find_all("a", class_="sister") 
# [<a class="sister" href="http://example.com/elsie" id="link1">Elsie</a>, 
# <a class="sister" href="http://example.com/lacie" id="link2">Lacie</a>, 
# <a class="sister" href="http://example.com/tillie" id="link3">Tillie</a>] 
+0

哎呀,谢谢 – codyc4321

+0

这里有一个术语,给怪异的名字不与命名空间/保留关键字相冲突 – codyc4321