从html代码中提取数据

时间:2017-04-08 14:17:12

标签: python beautifulsoup

我想使用BeautifulSoup将数据提取到div标签:

<div class="post contentTemplate" itemprop="text">Data to extract<div class="clear"></div></div>

2 个答案:

答案 0 :(得分:1)

您可以尝试这样的事情:

from bs4 import BeautifulSoup as bs

data = '<div class="post contentTemplate" itemprop="text">Data to extract<div class="clear"></div></div>'
soup = bs(data)
m = soup.findAll("div", {"class": "post contentTemplate"})
for k in m:
    print(k.get_text())

输出:

Data to extract

答案 1 :(得分:0)

您可以使用get_text()方法。这将从div在源代码中找到的每个find_all()中提取所有文本。

data = [e.get_text() for e in html.find_all('div')]

运行时返回:

[u'Data to extract', u'']

如果你不想让空值过滤掉它们。

data = [e.get_text() for e in html.find_all('div') if e.get_text()]