经过一段时间的python学习,我们知道提取数据的来源不止是网页,就像抓取数据可以选择很多种库一样。在python中,BeautifulSoup和HTMLParser虽然看起来不相似,但在使用上是比较相像的。今天就html转换树形结构,小伙伴们可以尝试着用此类方法去解决,其中涉及到的新知识点我们都会额外为大家进行讲解。
BeautifulSoup就是一个专门用来从html和xml文档中提取数据的库,现在的版本是bs4。除了BeautifulSoup之外,python还具有一些其它的库,如HTMLParser等,作用都差不多。解析器结合正则表达式,很容易将我们所需要的内容提取出来。
首先安装BeautifulSoup:$pip install beautifulsoup4
在python环境下导入字符串,创建BeautifulSoup对象:from bs4 import BeautifulSoup
soup = BeautifulSoup(html_str, 'lxml', from_encoding='utf-8')BeautifulSoup可以将复杂的html文档转化成树形结构,每个节点都是pyhton对象,所有的对象可以归纳为4种:
Tag
NavigableString
BeautifulSoup
Comment
HtmlParser将要接收一个字符串,输出data和新采集到的一些urls。之前写过的add_new_urls()函数接受一个可迭代对象,所以这里新的urls我们采用集合的形式(也可采用列表的形式)返回,da