首先需要安装requests-cache模块 pip install requests-cache
测试模块是否安装成功
import requests_cache
version = requests_cache.__version__
print('版本号为:'version)
输出结果:
版本号为:0.5.2
在使用Requests-Cache模块实现请求缓存时,只需要调用install_cache()函数即可,其语法如下:
requests_cache.install_cache(cache_name=‘cache’,backend=None,expire_after=None,allowable_codes=(200,),allowable_methods=(‘GET’,),session_factory=<class ‘requests_cache.core.CachedSession’>,**backend_options)
install_cache()函数中包含了多个参数,每个参数的含义如下:
cache_name:表示缓存文件的名称,默认为cache;
backend:表示设置缓存的存储机制,默认为None,表示默认使用sqlite进行存储;
expire_after:表示设置缓存的有效时间,默认为None,表示永久有效;
allowable_codes:表示设置状态码,默认为200;
allowable_codes:表示设置请求方式,默认为GET,表示只有GET请求才可以生成缓存。
session_factory:表示设置缓存执行的对象,需要现实CachedSession类;
**backend_options:如果缓存的存储方式为sqlite、mongo、redis数据库,该参数表示设置数据库的连接方式。
在使用install_cache()函数实现请求缓存时,一般情况不需要单独设置任何参数,只需要用默认参数即可。判断是否存在缓存的代码如下:
import requests_cache
import requests
requests_cache.install_cache()#设置缓存
requests_cache.clear()#清理缓存
url = 'http://httpbin.org/get'#定义测试地址
r = requests.get(url)#第一次发送网络请求
print('是否存在缓存:',r.from_cache)#False表示不存在缓存
r = requests.get(url)#第二次发送网络请求
print('是否存在缓存:',r.from_cache)#True表示存在缓存
输出结果:
是否存在缓存: False
是否存在缓存: True