http请求 request失败自动重新尝试代码示例


Posted in Python onJanuary 25, 2018

本文研究的主要是http请求 request失败自动重新尝试的一个例子,具体如下。

需求

最近开发一个项目,要实现的一个场景是对于某个http请求,如果请求失败,需要再自动尝试几次,并记录异常原因便于排查

代码实现

#http连接有问题时候,自动重连
def conn_try_again(function):
 RETRIES = 0
 #重试的次数
 count = {"num": RETRIES}
 def wrapped(*args, **kwargs):
  try:
   return function(*args, **kwargs)
  except Exception, err:
   if count['num'] < 2:
    count['num'] += 1
    return wrapped(*args, **kwargs)
   else:
    raise Exception(err)
 return wrapped

@conn_try_again
def http_request(session, method, url, data, header = header):
  try:
    if method == 'GET':
      r = session.get(url, data = data, headers = header)
      return r
    elif method == 'POST':
      r = session.post(url, data = data, headers = header)
      return r
    else:
      return None
  except Exception as e:
    logging.exception('[online_statistics] http request connection error %s'% e)

总结

以上就是本文关于http请求 request失败自动重新尝试代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
python时间整形转标准格式的示例分享
Feb 14 Python
python 2.6.6升级到python 2.7.x版本的方法
Oct 09 Python
Django中间件工作流程及写法实例代码
Feb 06 Python
Python生成器以及应用实例解析
Feb 08 Python
对TensorFlow中的variables_to_restore函数详解
Jul 30 Python
Pycharm无法显示动态图片的解决方法
Oct 28 Python
python 利用for循环 保存多个图像或者文件的实例
Nov 09 Python
用Python将Excel数据导入到SQL Server的例子
Aug 24 Python
Python使用APScheduler实现定时任务过程解析
Sep 11 Python
python pptx复制指定页的ppt教程
Feb 14 Python
Python实例教程之检索输出月份日历表
Dec 16 Python
Python读写Excel表格的方法
Mar 02 Python
Python实现PS图像调整颜色梯度效果示例
Jan 25 #Python
Python使用requests发送POST请求实例代码
Jan 25 #Python
python使用pandas实现数据分割实例代码
Jan 25 #Python
python实现闹钟定时播放音乐功能
Jan 25 #Python
python实现壁纸批量下载代码实例
Jan 25 #Python
python命令行解析之parse_known_args()函数和parse_args()使用区别介绍
Jan 24 #Python
Python动刷新抢12306火车票的代码(附源码)
Jan 24 #Python
You might like
PHP的substr_replace将指定两位置之间的字符替换为*号
2011/05/04 PHP
PHP中使用sleep造成mysql读取失败的案例和解决方法
2014/08/21 PHP
php计算多维数组中所有值总和的方法
2015/06/24 PHP
php超快高效率统计大文件行数
2015/07/05 PHP
PHP表单验证内容是否为空的实现代码
2016/11/14 PHP
PHP基于ICU扩展intl快速实现汉字转拼音及按拼音首字母分组排序的方法
2017/05/03 PHP
PHP测试框架PHPUnit组织测试操作示例
2018/05/28 PHP
php微信公众号开发之简答题
2018/10/20 PHP
PHP序列化和反序列化深度剖析实例讲解
2020/12/29 PHP
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.3
2008/03/22 Javascript
javascript天然的迭代器
2010/10/29 Javascript
检测一个函数是否是JavaScript原生函数的小技巧
2015/03/13 Javascript
JavaScript Date对象详解
2016/03/01 Javascript
用JS生成UUID的方法实例
2016/03/30 Javascript
JS对HTML表格进行增删改操作
2016/08/22 Javascript
touch.js 拖动、缩放、旋转 (鼠标手势)功能代码
2017/02/04 Javascript
js实现前端图片上传即时预览功能
2017/08/02 Javascript
es6 symbol的实现方法示例
2019/04/02 Javascript
Vue如何基于vue-i18n实现多国语言兼容
2020/07/17 Javascript
[48:46]完美世界DOTA2联赛PWL S2 SZ vs FTD.C 第二场 11.19
2020/11/19 DOTA
python数字图像处理之高级滤波代码详解
2017/11/23 Python
Python程序员面试题 你必须提前准备!(答案及解析)
2018/01/23 Python
python3.5 cv2 获取视频特定帧生成jpg图片
2019/08/28 Python
Python基于Socket实现简易多人聊天室的示例代码
2020/11/29 Python
使用phonegap创建联系人的实现方法
2017/03/30 HTML / CSS
.NET面试问题集
2015/12/08 面试题
秸秆管理实施方案
2014/03/15 职场文书
土地转让协议书
2014/04/15 职场文书
物业管理专业自荐信
2014/07/01 职场文书
2014年度思想工作总结
2014/11/27 职场文书
北京导游词
2015/02/12 职场文书
因家庭原因离职的辞职信范文
2015/05/12 职场文书
投资申请报告
2015/05/19 职场文书
2015年董事长秘书工作总结
2015/07/23 职场文书
热爱劳动主题班会
2015/08/14 职场文书
springboot临时文件存储目录配置方式
2021/07/01 Java/Android