我对soup('tag_name')
和soup.find_all('tag_name')
之间的区别感到困惑。这是一个简短的html示例:
from bs4 import BeautifulSoup
string = """
<html><body><div class="MsoNormal">
<span style='font-family: "Times New Roman","serif"; font-size: 12.0pt;
line-height: 107%;'> Some text <o:p></o:p></span></div></body></html>
"""
soup = BeautifulSoup(string)
if soup('span') == soup.find_all('span'):
print('No difference')
这个例子很小,但我测试了更长的字符串,发现两者之间没有区别。我认为它可能是bs4
的新内容,但我在文档中看到的只是findAll
成为find_all
。这两种方法是一样的吗?第一个实际上是一种方法吗?他们什么时候会给出不同的结果?
答案 0 :(得分:1)
不,两者之间没有区别。
从the documentation:&#34; 如果您将BeautifulSoup对象或Tag对象视为一个函数,那么它就像在该对象上调用find_all()一样。&#34;