redis
介绍
Redis也是一个数据库,数据库分为关系型的数据库和非关系型的数据库。
关系型数据库:mysql、oracle、sqlserver、sqlite是有sql语句的
非关系型数据库:Redis 底层使用 C 语言编写,是一款开源的、基于内存的 NoSql 数据库、没有sql语句。
Redis 是一个key-value存储系统,性能远超其他数据库,并且支持集群、分布式及主从同步等优势,所以经常用于 缓存数据、高速读写 等场景。
若返回字符串类型时,加上decode_responses=True
Hash类型
List类型
Set类型
异常处理
异常
当你的程序出现例外情况时就会发生异常(Exception)。例如,当你想要读取一个文件时,而那个文件却不存在,怎么办?又或者你在程序执行时不小心把它删除了,怎么办?这些通过使用异常来进行处理。
类似地,如果你的程序中出现了一些无效的语句该怎么办?Python 将会对此进行处理,举起(Raises)它的小手来告诉你哪里出现了一个错误(Error)。
1、捕捉IndexError异常
输出
2、捕捉ZeroDivisionError异常
输出
3、遇到各种类型的都报错,用Exception
输出
若出现异常后打印红色错误信息
输出显示红色异常信息
若看后台日志返回的错误信息
输出显示
写日志
日志是跟踪软件运行时所发生的事件的一种方法。软件开发者在代码中调用日志函数,表明发生了特定的事件。事件由描述性消息描述,该描述性消息可以可选地包含可变数据(即,对于事件的每次出现都潜在地不同的数据)。事件还具有开发者归因于事件的重要性;重要性也可以称为级别或严重性。
logging提供了一组便利的函数,用来做简单的日志。它们是 debug()、 info()、 warning()、 error()
Logger:
Logger 对象要做三件事情。首先,它们向应用代码暴露了许多方法,这样应用可以在运行时记录消息。其次,记录器对象通过严重程度(默认的过滤设施)或者过滤器对象来决定哪些日志消息需要记录下来。第三,记录器对象将相关的日志消息传递给所有感兴趣的日志处理器。
常用的记录器对象的方法分为两类:配置和发送消息。
这些是最常用的配置方法:
Logger.setLevel()指定logger将会处理的最低的安全等级日志信息, debug是最低的内置安全等级,critical是最高的内建安全等级。例如,如果严重程度为INFO,记录器将只处理INFO,WARNING,ERROR和CRITICAL消息,DEBUG消息被忽略。
Logger.addHandler()和Logger.removeHandler()从记录器对象中添加和删除处理程序对象。
Logger.addFilter()和Logger.removeFilter()从记录器对象添加和删除过滤器对象。
Requests
Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库,Requests它会比urllib更加方便,可以节约我们大量的工作。
安装
pip install requests
基本的 get 请求
基本post请求(data 参数):
添加data请求参数
postman中给post请求添加body,form-data入参
通过post把数据提交到url地址,等同于一字典的形式提交form表单里面的数据
python requests中给post请求添加data
将添加的请求参数放到一个字典中,然后传给post方法的data形参
添加 json 的请求参数
postman中给post请求添加body,JSON入参
python requests中给post请求添加JSON入参
将添加的请求参数放到一个字典中,然后传给post方法的json形参
添加cookies请求参数
postman中给post请求添加cookie
postman中添加cookie一般将cookie放到请求的headers中 进行请求
python requests中给post请求添加cookies
方法一:
将cookie键值对,存放到字典中,然后把这个字典传给post方法的cookies形参
这种方法效率较低,需要提前处理cookie键值对格式
方法二:
如果cookie过长,
可以把cookie的所有键值对作为字典的value直接放到字典中,key是“cookie”
headers={"cookie":"RK=fOAg+SR+Gs; traceid=0b89665ce1"}
然后传给post方法的headers形参