当前位置:   article > 正文

python的requests.get和requests.post用法以及增加请求次数和超时设置_python post超时重试

python post超时重试

在平时的学习和工作中,常常会碰到将一堆数据上传到网页或者是从网页端下载数据。
那么我们可以使用python的requests.get和requests.post方法,自动化帮我们上传下载。

封装好的get请求
def get_one_page_by_get(url,headers):
    try:
        response=requests.get(url,timeout=20,headers=headers)
        response.encoding=response.apparent_encoding        
        return response.text
    except RequestException:
        return None
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
封装好的post请求
def get_one_page_by_post(url,headers,data):
    try:
        response=requests.post(url,timeout=30,headers=headers,data=data)
        return response.text
    except RequestException:
        return None
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
get或者post增加请求次数

在请求中我们通常会遇到一次请求不成功的情况,那么我们可以通过try块或者session的方式增加请求次数,timeout参数可以设置每次请求超时时长。

  • try块的使用方式
try_time=0
while try_time<3:
    try:
        person_info = get_one_page_by_post(view_url,headers,data)
        person_info = json.loads(person_info)
        break
    except Exception as e:
        # print(e)
        try_time+=1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • session的方式
s = requests.session()
s.mount('https://', HTTPAdapter(max_retries=5)) # 重试5次
response = s.request("GET", params=params,url=url, timeout=15).text
  • 1
  • 2
  • 3
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号