retrying模块的安装及使用

安装retrying模块:

win10用户在联网的情况下直接在cmd.exe里面键入"pip install retrying"  即可安装retrying模板

在网页正常浏览的过程中,如果发生过慢的情况,我们会重新加载页面,在代码中,如果我们要实现重新加载页面,就需要使用到retrying模块了

 

retrying 模块的使用

使用retrying模块提供的retry模块
通过装饰器的方式使用,让被装饰的函数反复执行
retry中可以传入参数stop_max_attempt_number,让函数报错后继续重新执行,达到最大执行次数的上限,如果每次都报错,整个函数报错,如果中间有一个成功,程序继续往后执行

 

import requests
from retrying import retry

@retry(stop_max_attempt_number=3)
def get12306():
print('123')
url = "https://www.12306.cn/mormhweb/"
response = requests.get(url,timeout=0.001)
print(response.content.decode())
if __name__ == '__main__':
try:
get12306()
except:
print('finish')

我们使用timeout属性营造出一种网速慢的情况


 

如果每次请求都失败的话,会重复加载三次

但如果成功一次,就不再重新加载直接停止,即第一次便成功加载进去的话,便只运行一次

 

 

import requests
from retrying import retry

@retry(stop_max_attempt_number=3)
def get12306():
print('123')
url = "https://www.12306.cn/mormhweb/"
response = requests.get(url,timeout=3) # 使其停顿3秒
print(response.content.decode())
if __name__ == '__main__':
try:
get12306()
except:
print('finish')

 



posted on 2018-12-20 20:54  小田是我  阅读(2150)  评论(1编辑  收藏  举报

导航