CSS选择器
div a::text div下面的a标签的text文本
div.agree h1 a li::text 属性为agree的div下面的h1标签下面的a标签下面的li的文本
div img.mimg::attr(src) div下面的mimg属性的img标签中的src属性中的内容
div ul.a.b.c li::text div下面的属性为a b c三个属性的ul下面的li中的text文本
Xpath
Xpath是什么
1. Xpath是一门语言
2. Xpath可以在xml文档中查找信息
3. Xpath支持HTML
4. Xpath通过元素和属性进行导航
5. Xpath可以用来提取信息
6. Xpath比正则表达式厉害
7. Xpath比正则表达式简单
安装lxml库
from lxml import etree 导入
Selector = etree.HTML(网页源代码) 获取
Selector.xpath(一段神奇的符号)提取
使用xpath的使用
1. Xpath与HTML结构
a) 树状结构
b) 逐层展开
c) 逐层定位
d) 寻找独立节点
2. 获取网页元素的xpath
a) 手动分析法
列:html->body->div>ul[@useful]->li
这里ul属性也写成ul[@id=”useful”]
b) Chrome生产法
将鼠标放在该节点上,右键copy xpath
3. 应用xpath提取内容
a) // 定位根节点
b) / 往下层寻找
c) 提取文本内容:/text()
d) 提取属性内容:/@xxxx
Xpath的特殊用法
1. 以相同的字符开头
starts-with(@属性名称,属性字符相同的部分)
列:starts
//div[start-with(@id,”text”)]/text()
提取div中id为text开头的所有文本内容
2. 标签套标签
string(.)
第一行中得到的是一个列表,虽然里面只有一个元素,但我们还是要把第一个提取出来