昨天刚刚学过正则匹配,顺着例题简单写了个猫眼Top100。
今天看了看XPath,这个库有自己的小语法,需要注意的点还不少,怕是以后用到的时候忘记了,翻书一方面,如果手边没有书,觉得用博客详细的记录下,不失为不错的备选方案。
其实也是觉得如果自己能写出来让其他人看懂,也是一种知识的巩固。
一举多得,何乐不为?
- pycharm安装lxml这个略过了。
- 先上源文本
<div>
<ul>
<li class="item-0"><a href="link1.html">first item</a></li>
<li class="item-1"><a href="link2.html">second item</a></li>
<li class="item-inactive"><a href="link3.html">third item</a></li>
<li class="item-1"><a href="link4.html">fourth item</a></li>
<li class="item-0"><a href="link5.html">fifth item</a></li>
</ul>
</div>
以上是原文本,接下来我们根据这个问题进行XPath的练习
注:
两种方法读取HTML片段
放在str中直接解析(lxml.etree.HTML(str))
放在.html文件中,通过路径读取
(lxml.etree.parse('文件路径',lxml.etree.HTMLparser()))
以上两种方法,放入XPath都会自动添加总标签
<html><body>原有片段<body></html>
通过文件读取的时候还会在头部添加DOCTYPE声