lxml与Xpath提取网页数据
目录
活动地址:CSDN21天学习挑战赛
学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。

这个是XML和HTML的解析器,其主要功能是解析和提取XML和HTML的数据,是一款高性能的python HTML、XML解析器,也可以用XPath语法,来定位特定的元素以及节点信息
解析HTML字符串
- from lxml import etree
-
- text = '''
-
- 无羡
- 20
- 四川
-
- '''
- # 开始初始化
- html = etree.HTML(text) # 这里需要传入一个html形式的字符串
- print(html)
- print(type)
- # 将字符串序列化为html字符串
- result = etree.tostring(html).decode('utf-8')
- print(result)
- print(type(result))
输出结果
- <Element html at 0x1f7fa7f2a80>
- <class 'type'>
- <html><body>
- <div class="key">
- <div class="name">无羡div>
- <div class="age">20div>
- <div class="address">四川div>
- div>
- body>html>
- <class 'str'>
一门在XML文档中查找信息的语言,可用来在XML文档中元素和属性进行遍历
谓语,用来查找某个特定节点或者包含某个指定的值的节点,被嵌在方括号中
选取未知节点,通配符可用来选取未知的XML元素
选取若干路径,通过在路径表达式中使用“|”运算符,可以选取若干个路径
ctrl+shift+X开启xpath-helper插件
定位爬取的内容,按住X键,移动鼠标在爬取内容上即可显示标签路径
实战代码
-
- <div>
- <ul>
- <li class="item-0"><a href="link1.html">first itema>li>
- <li class="item-1"><a href="link2.html">second itema>li>
- <li class="item-inactive"><a href="link3.html"><span class="bold">third itemspan>a>li>
- <li class="item-1"><a href="link4.html">fourth itema>li>
- <li class="item-0"><a href="link5.html">fifth itema>li>
- ul>
- div>