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 相关文章推荐
phpsir 开发 一个检测百度关键字网站排名的python 程序
Sep 17 Python
在Python的web框架中编写创建日志的程序的教程
Apr 30 Python
Python实现针对中文排序的方法
May 09 Python
Python实现的文本简单可逆加密算法示例
May 18 Python
python机器学习之KNN分类算法
Aug 29 Python
解决Python plt.savefig 保存图片时一片空白的问题
Jan 10 Python
Python零基础入门学习之输入与输出
Apr 03 Python
python基于paramiko将文件上传到服务器代码实现
Jul 08 Python
解决django后台管理界面添加中文内容乱码问题
Nov 15 Python
python实现在一个画布上画多个子图
Jan 19 Python
tensorflow使用range_input_producer多线程读取数据实例
Jan 20 Python
使用OpenCV实现人脸图像卡通化的示例代码
Jan 15 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类
2008/04/09 PHP
解析PHP计算页面执行时间的实现代码
2013/06/18 PHP
php while循环得到循环次数
2013/10/26 PHP
php实现webservice实例
2014/11/06 PHP
php实现cookie加密的方法
2015/03/10 PHP
PHP重载基础知识回顾
2020/09/10 PHP
ext 同步和异步示例代码
2009/09/18 Javascript
纯javascript实现四方向文本无缝滚动效果
2015/06/16 Javascript
js如何打印object对象
2015/10/16 Javascript
javascript中arguments,callee,caller详解
2016/03/16 Javascript
Bootstrap表单布局样式源代码
2016/07/04 Javascript
js以分隔符分隔数组中的元素并转换为字符串的方法
2016/11/16 Javascript
JavaScript实现定时页面跳转功能示例
2017/02/14 Javascript
Angularjs自定义指令Directive详解
2017/05/27 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
vue cli 3.0 使用全过程解析
2018/06/14 Javascript
nuxt.js 缓存实践
2018/06/25 Javascript
Angular4.0动画操作实例详解
2019/05/10 Javascript
jQuery pager.js 插件动态分页功能实例分析
2019/08/02 jQuery
[04:04]DOTA2亚洲邀请赛比赛场馆&酒店全攻略
2017/03/23 DOTA
python实现Zabbix-API监控
2018/09/17 Python
python-opencv获取二值图像轮廓及中心点坐标的代码
2019/08/27 Python
Python爬虫进阶之爬取某视频并下载的实现
2020/12/08 Python
马德里著名的运动鞋商店:NOIRFONCE
2019/04/12 全球购物
丝芙兰意大利官方网站:Sephora.it
2019/12/13 全球购物
酒店端午节促销方案
2014/02/18 职场文书
观看《永远的雷锋》心得体会
2014/03/12 职场文书
公开承诺书格式
2014/05/21 职场文书
ktv好的活动方案
2014/08/17 职场文书
离职证明范本
2015/06/12 职场文书
2015年支教教师工作总结
2015/07/22 职场文书
小学教师教育随笔
2015/08/14 职场文书
践行三严三实心得体会(2016推荐篇)
2016/01/06 职场文书
2016计算机专业毕业生自荐信
2016/01/28 职场文书
实战Python爬虫爬取酷我音乐
2022/04/11 Python
vue 数字翻牌器动态加载数据
2022/04/20 Vue.js