赞
踩
上一篇博客,我们已经撰写了第一只网络爬虫,并且成功的获取了网页上的信息,但是这些信息仍然是存在网页当中,那么我们要怎么将这些非结构化的数据结构化呢,这就是今天要学习的内容了。
首先,我们所要了解的是DOM Tree。
DOM是文档对象化模型(Document Object Model)的简称。DOM Tree是指通过DOM将HTML页面进行解析,并生成的HTML tree树状结构和对应访问方法。
借助DOM Tree,我们能直接而且简易的操作HTML页面上的每个标记内容。
(以上百科)
通俗而言,DOM就是一种手段,让我们将从网页上获取的信息自动去除掉html标签,直接提取里面的信息。
所以,这个时候我们也就需要BeautifulSoup4套件,来帮我们把网页信息变成DOM Tree。
首先,新建一个python文件,导入和调用BeautifulSoup。输入下列代码:
from bs4 import BeautifulSoup
html_sample = '\
<html>\
<body>\
<h1 id ="title">hello world</h1>\
<a href ="#" class = "link">This is link1</a>\
<a href ="# link2" class = "link">This is link2</a>\
</body>\
</html>'
soup = BeautifulSoup(html_sample)
print(soup.text)
运行后,我们发现,我们已经能够去除掉标签,只保留和显示数据内容了,但是在运行时也会提出警告:
它会提醒你说,你没有指明剖析器(parser)。对于这个问题,解决方法很简单,我们只需要在指明它的剖析器是html.parser 就可以了:
from bs4 import BeautifulSoup
html_sample='\
<html>\
<body>\
<h1 id="title">hello world</h1>\
<a href="#" class="link">This is link1</a>\
<a href="# link2" class="link">This is link2</a>\
</body>\
</html>'
soup=BeautifulSoup(html_sample,'html.parser')
print(soup.text)
这样我们在运行的时候就不会有警告信息了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。