当前位置: 首页 > news >正文

做社群的网站有哪些深圳网络优化公司

做社群的网站有哪些,深圳网络优化公司,织梦网站模板官网,做网络优化哪家公司比较好通过requests.session().request 封装request方法 考虑到请求HTTP/2.0 同时封装httpx 来处理HTTP/2.0的请求 封装requests # 遇到请求失败的情况时 重新请求,请求5次等待2s retry(stop_max_attempt_number5, retry_on_resultlambda re_data: re_data is None, wai…

通过requests.session().request 封装request方法
考虑到请求HTTP/2.0
同时封装httpx 来处理HTTP/2.0的请求

封装requests

# 遇到请求失败的情况时 重新请求,请求5次等待2s
@retry(stop_max_attempt_number=5, retry_on_result=lambda re_data: re_data is None, wait_fixed=2000)def requests_request(self, method, url, params=None, data=None, json=None, headers=None, files=None, verify=False,cert=None, timeout=None, proxies=None, proxy=None, **kwargs):# 对异常进行捕获try:"""封装request请求,将请求方法、请求地址,请求参数、请求头等信息入参。注 :verify: True/False,默认为True,认证SSL证书开关;cert: 本地SSL证书。如果不需要ssl认证,可将这两个入参去掉使用session管理器requests.session(): 维持会话,跨请求的时候保存参数   """# 处理代理proxies = Noneif proxy:proxies = {'http://': 'http://' + proxy,'https://': 'https://' + proxy,}#  使用requests.session().request 请求re_data = requests.session().request(method, url, params=params, data=data, json=json, headers=headers,files=files, cert=cert, timeout=timeout, verify=verify,proxies=proxies, **kwargs)# 异常处理 报错显示具体信息except Exception as e:re_data = None# 打印异常print("请求失败:{0}".format(e))logger.error("Error occurred: %s", str(e), exc_info=True)# 重新抛出异常,触发 retry 机制raise e# 返回响应结果return re_data

封装httpx

@retry(stop_max_attempt_number=5, retry_on_result=lambda re_data: re_data is None, wait_fixed=2000)def httpx_request(self, method, url, is_http2=False, content=None, data=None, files=None, json=None, params=None,headers=None, cookies=None, timeout=None, extensions=None, proxy=None, **kwargs):# 对异常进行捕获try:"""使用client  method.upper() 请求方法都转为大写"""# 处理代理proxies = Noneif proxy:proxies = {'http://': 'http://' + proxy,'https://': 'https://' + proxy,}re_data = httpx.Client(http2=is_http2, proxies=proxies).request(method.upper(), url, content=content,data=data, files=files, json=json,params=params, headers=headers,cookies=cookies, timeout=timeout,extensions=extensions, **kwargs)# 异常处理 报错显示具体信息except Exception as e:re_data = None# 打印异常print("请求失败:{0}".format(e))logger.error("Error occurred: %s", str(e), exc_info=True)# 重新抛出异常,触发 retry 机制raise e# 返回响应结果return re_data

将两个请求封装在一个方法里

@retry(stop_max_attempt_number=5, retry_on_result=lambda re_data: re_data is None, wait_fixed=2000)def request(self, method, url, is_http2=False, params=None, data=None, json=None, headers=None, files=None,verify=False, cert=None, timeout=None, proxies=None, content=None, cookies=None, extensions=None,**kwargs):try:if is_http2:re_data = self.httpx_request(method=method.upper(), url=url, is_http2=is_http2, content=content,data=data, files=files, json=json, params=params, headers=headers,cookies=cookies, timeout=timeout, extensions=extensions, **kwargs)else:re_data = self.requests_request(method=method, url=url, params=params, data=data, json=json,headers=headers, files=files, cert=cert, timeout=timeout, verify=verify,proxies=proxies, **kwargs)# 异常处理 报错显示具体信息except Exception as e:re_data = None# 打印异常print("请求失败:{0}".format(e))logger.error("Error occurred: %s", str(e), exc_info=True)# 重新抛出异常,触发 retry 机制raise e# 返回响应结果return re_data

通过is_http2来区分

测试代码如下

if __name__ == '__main__':# request_requests 使用requests请求request_data = request_main.requests_request("get", 'https://spa16.scrape.center/')if request_data:print(request_data.text)print(request_data.status_code)# httpx 请求HTTP/2.0# response = re.httpx_request('GET', 'https://spa16.scrape.center/', True)# httpx 一般请求# headers = {'User-Agent': 'my-app/0.0.1'}# response = re.httpx_request('get', 'https://www.httpbin.org/get',params={'name': 'germey'})# print(response.text)# print(response.status_code)print(datetime.datetime.now())
http://www.zhongyajixie.com/news/46021.html

相关文章:

  • 如何用dw做网站底页网站性能优化方法
  • 福建住房和城乡建设厅网站首页网站权重查询接口
  • 曲靖做网站郑州粒米seo外包
  • 广州地区做网站的河南自助建站seo公司
  • 高端品牌优势外贸谷歌seo
  • 响水专业做网站广州seo营销培训
  • 湖南省网站建设今日重大军事新闻
  • 咋做网站代码背景图最简短的培训心得
  • 上线了建站怎么样旺道网站优化
  • 手机网站报价表网站模板设计
  • 做网站需要编程基础百度搜索推广创意方案
  • 购物网站搜索功能怎么做app优化方案
  • vvic网站一起做网店做seo推广公司
  • 甘肃省住房与城乡建设部网站点击排名优化
  • 精品网站建设公司百度推广账户优化方案
  • 优秀网站赏析打开百度浏览器
  • 芜湖公司做网站春哥seo博客
  • 将一个网站拉入黑名单怎么做成都网站seo技术
  • 创办网站的步骤如何在各种网站投放广告
  • 讯美智能网站建设网站收录量
  • 营销型网站建设公司推荐杭州新站整站seo
  • 房产网站建设方案网络推广方式有哪些
  • 深圳网站建设服务公购买友情链接
  • 住房和建设执业资格注册中心网站深圳全网营销平台排名
  • 温州阿里巴巴网站建设seo网站推广排名
  • 做调研的网站一般有哪些曼联vs曼联直播
  • 保定网站建设方案百度查询入口
  • 宝塔部署wordpressseo怎么搞
  • 用领导人在公司网站做宣传犯法吗seo专员工资待遇
  • 创建官方网站培训心得简短