python爬虫(2)

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() 方法来查看对象支持的方法
'''
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值