本文主要是介绍bs4和lxml,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
周所周知,bs4和lxml是非常流行的两个python模块,他们常被用来对抓取的网页进行解析,以便进一步抓取的进行。作为一个爬虫爱好者,今天我来讲讲这两个各自的优点和不足,不对的地方还请各位大神斧正。
BeautifulSoup
BeautifulSoup也是比较常用且使用简单的技术,由于在操作过程中,会将整个文档树进行加载然后进行查询匹配操作,使用过程中消耗资源较多。
文档地址
- 对象结构
- Tag:标签对象
- NavigableString:字符内容操作对象
- BeautifulSoup:文档对象
- Comment:特殊类型的NavigableString
Tag
tag有2个重要属性,Name和Attributes,name可直接用.name来获取。Attributes属性可以用.attrs获取或者类似字典获取方式。
NavigableString
表示装tag中的字符串, unicode()
方法可以直接将 NavigableString
对象转换成Unicode字符串
Comment
是一个特殊类型的 NavigableString
对象
… 太多了暂停下
lxml
lxml是python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高
文档地址
re正则表达式
文档地址
匹配神器,速度快效率高
这篇关于bs4和lxml的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!