首页 > IT职业 > IT职场 > lxml如何在python爬虫中使用?
在获取网页方面,python里的库是一个大家庭。除了之前我们频繁提到的几个,还有lxml库同样非常适合使用。不过lxml库比较特殊,还涉及到Xpath语法的使用,这里我们暂且不讲。lxml的安装教程在往期有,没有的小伙伴可以去安装一下。接下来开始今天对lxml的学习吧。
首先我们利用它来解析 HTML 代码,先来一个小例子来感受一下它的基本用法。
from lxml import etree text = ''' <div> <ul> <li><a href="link1.html">first item</a></li> <li><a href="link2.html">second item</a></li> <li><a href="link3.html">third item</a></li> <li><a href="link4.html">fourth item</a></li> <li><a href="link5.html">fifth item</a> </ul> </div> ''' html = etree.HTML(text) result = etree.tostring(html) print(result)
首先我们使用 lxml 的 etree 库,然后利用 etree.HTML 初始化,然后我们将其打印出来。 其中,这里体现了 lxml 的一个非常实用的功能就是自动修正 html 代码,大家应该注意到了,最后一个 li 标签,其实我把尾标签删掉了,是不闭合的。不过,lxml 因为继承了 libxml2 的特性,具有自动修正 HTML 代码的功能。 所以输出结果是这样的
<html><body> <div> <ul> <li><a href="link1.html">first item</a></li> <li><a href="link2.html">second item</a></li> <li><a href="link3.html">third item</a></li> <li><a href="link4.html">fourth item</a></li> <li><a href="link5.html">fifth item</a></li> </ul> </div> </body></html>
不仅补全了 li 标签,还添加了 body,html 标签。
以上就是python爬虫中lxml的使用。用lxml在分析代码和库方面,需要耗费的时间比较多,这点小编也没有太好的办法。大家稍微勿躁,相信等待是会换来好的结果~
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/1729/viewspace-2832292/ ,如需转载,请注明出处,否则将追究法律责任。