thing = '爬虫解析'
'''
1.数据分类
非结构化:html和文本 解析:re和xpath
结构和:json和xml 解析:json模块->python字典
json模块:
json肯定是一个字符串,这个字符串中是个字典 即' { } '
json转换
json -> python的dict loads 加载成字典
'''
'''
2.正则re
可是使用创建对象的方法
pattern = re.compile(正则) 创建正则对象
pattern.match 从头找一个
pattern.search 找一个
pattern.findall 找所有符合正则的结果
pattern.sub(用于匹配的正则,替换,原数据) 正则替换
复习正则
豆瓣电影 : 数据在json中
果壳问答 : 数据在网页源码上 正则
36氪: 下拉实现刷新,第一部分在源码上之后再json中
'''
'''
3.xpath
节点即标签
xpath语法:(和路径很相似)
/节点 绝对路径
//节点 相对路径
/. 当前节点
/.. 上一级节点
取值:
/html/head/title/text() 取值,一个开闭标签中的文本内容
/html/head/meta/@属性名 取属性值
带修饰的: []是修饰
/html/body/div【3】 3号div
/html/body/div[3]/div[last() -1] 倒数第二个 last()方法最后一个
/html/body/div【position() > 25】 位置在25号div之后的div
小点:
//div【@id = '什么'】 id是唯一的,所以能取到唯一的一个div
//span【i = 200】 标签span下的 i 标签的值是 200的
| 或者符合 满足条件的都弄出来
//a【contains(text(),’下一页’)】/@href 拿出下一页的链接,文本内容包含下一页的那个连接 contains(匹配谁, 匹配规则)函数
'''
'''
4.lxml库
from lxml import etree
html = etree.HTML(response)
etree的HTML方法从响应中拿出html内容
对象element列表 = html.xpath(xpath的规则)
对象element列表可以继续.xpath解析,然后还是对象列表
可以用dic() 方法来查看对象支持的方法
'''
'''
1.数据分类
非结构化:html和文本 解析:re和xpath
结构和:json和xml 解析:json模块->python字典
json模块:
json肯定是一个字符串,这个字符串中是个字典 即' { } '
json转换
json -> python的dict loads 加载成字典
'''
'''
2.正则re
可是使用创建对象的方法
pattern = re.compile(正则) 创建正则对象
pattern.match 从头找一个
pattern.search 找一个
pattern.findall 找所有符合正则的结果
pattern.sub(用于匹配的正则,替换,原数据) 正则替换
复习正则
豆瓣电影 : 数据在json中
果壳问答 : 数据在网页源码上 正则
36氪: 下拉实现刷新,第一部分在源码上之后再json中
'''
'''
3.xpath
节点即标签
xpath语法:(和路径很相似)
/节点 绝对路径
//节点 相对路径
/. 当前节点
/.. 上一级节点
取值:
/html/head/title/text() 取值,一个开闭标签中的文本内容
/html/head/meta/@属性名 取属性值
带修饰的: []是修饰
/html/body/div【3】 3号div
/html/body/div[3]/div[last() -1] 倒数第二个 last()方法最后一个
/html/body/div【position() > 25】 位置在25号div之后的div
小点:
//div【@id = '什么'】 id是唯一的,所以能取到唯一的一个div
//span【i = 200】 标签span下的 i 标签的值是 200的
| 或者符合 满足条件的都弄出来
//a【contains(text(),’下一页’)】/@href 拿出下一页的链接,文本内容包含下一页的那个连接 contains(匹配谁, 匹配规则)函数
'''
'''
4.lxml库
from lxml import etree
html = etree.HTML(response)
etree的HTML方法从响应中拿出html内容
对象element列表 = html.xpath(xpath的规则)
对象element列表可以继续.xpath解析,然后还是对象列表
可以用dic() 方法来查看对象支持的方法
'''