如何使用Beautiful Soup拉出没有属性的<p>标签?

时间:2015-12-05 22:02:44

标签: python beautifulsoup

假设网页包含以下内容:

<p style="display: none;"><input id="ak_js" name="ak_js" type="hidden" value="68"/></p>

<p><b>Lack of sales.. ANY sales.</b></p>

我正在尝试编写仅提取第二个标记的代码。基本上所有段落标签都不包含属性。 我在下面尝试了以下两段代码,但是他们没有得到我想要的结果。

text = BeautifulSoup(requests.get(url).text)

for tag in text.find_all("p", attrs = False):
    .....

for tag in text.find_all(re.compile("^<p>$")):
    ....

解决这个问题的最佳方法是什么?

1 个答案:

答案 0 :(得分:3)

你可以给find_all一个lambda并用它过滤。

soup.find_all(lambda tag: tag.name == 'p' and not tag.attrs)