Python爬虫学习笔记2
part2 解析内容
1.正则表达式
1.1常用的匹配规则
1.2常用的几个方法
方法 | match | search | findall | sub | compile |
---|---|---|---|---|---|
功能 | 从字符串起始位置匹配正则表达式 | 扫描整个字符串,返回第一个成功匹配的结果 | 扫描整个字符串,返回匹配正则表达式的所有内容 | 修改文本 | 将正则字符串编译成正则表达式对象 |
参数 | 第一个传入正则表达式,第二个传入要匹配的字符串 | 同match | 同match | 第一个需要修改字符串的正则表达式,第二个替换成的字符串,第三个是原字符串 |
注:
(1)re.s参数在代码有换行时使用
2.解析库
2.1 lxml库
常用规则:
2.2 Beautiful Soup 库
(1)节点选择器
使用方法:.节点.属性
常用的属性:
属性 | 获取内容 |
---|---|
string | 文本的值 |
name | 节点名称 |
attrs | 属性 |
contents | 直接子节点 |
children | 直接子节点 |
descendants | 所有子孙节点 |
parent | 直接父节点 |
parents | 所有祖先节点 |
next_sibling | 下一个兄弟元素 |
next_siblings | 所有后面的兄弟节点 |
previous_sibling | 前一个兄弟元素 |
previous_siblings | 所有前面的兄弟节点 |
(2)方法选择器
find_all(name,attrs,recursive,text,kwargs)
find()
区别:前者返回所有匹配元素组成的列表;后者只返回第一个匹配的元素
(3)CSS选择器
方法:select()