在平时的学习和工作中,常常会碰到将一堆数据上传到网页或者是从网页端下载数据。
那么我们可以使用python的requests.get和requests.post方法,自动化帮我们上传下载。
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
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
在请求中我们通常会遇到一次请求不成功的情况,那么我们可以通过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
session
的方式s = requests.session()
s.mount('https://', HTTPAdapter(max_retries=5)) # 重试5次
response = s.request("GET", params=params,url=url, timeout=15).text