python3 requests https 请求 报 SSLContext 相关递归错误

2024-08-31 20:48

本文主要是介绍python3 requests https 请求 报 SSLContext 相关递归错误,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、错误信息:

2019-11-19 15:14:40 : Provider before requests .post
2019-11-19 15:14:41 : error infoTraceback (most recent call last):File "/root/operation/spider/web/lh_spider_config/utils/run_provider/service/provider.py", line 782, in parse_page_type_apiproxies=proxies, data=params, timeout=8)File "/root/operation/spider/web/web_env/lib/python3.6/site-packages/requests/api.py", line 116, in postreturn request('post', url, data=data, json=json, **kwargs)File "/root/operation/spider/web/web_env/lib/python3.6/site-packages/requests/api.py", line 60, in requestreturn session.request(method=method, url=url, **kwargs)File "/root/operation/spider/web/web_env/lib/python3.6/site-packages/requests/sessions.py", line 533, in requestresp = self.send(prep, **send_kwargs)File "/root/operation/spider/web/web_env/lib/python3.6/site-packages/requests/sessions.py", line 646, in sendr = adapter.send(request, **kwargs)File "/root/operation/spider/web/web_env/lib/python3.6/site-packages/requests/adapters.py", line 449, in sendtimeout=timeoutFile "/root/operation/spider/web/web_env/lib/python3.6/site-packages/urllib3/connectionpool.py", line 672, in urlopenchunked=chunked,File "/root/operation/spider/web/web_env/lib/python3.6/site-packages/urllib3/connectionpool.py", line 376, in _make_requestself._validate_conn(conn)File "/root/operation/spider/web/web_env/lib/python3.6/site-packages/urllib3/connectionpool.py", line 994, in _validate_connconn.connect()File "/root/operation/spider/web/web_env/lib/python3.6/site-packages/urllib3/connection.py", line 370, in connectcert_reqs=resolve_cert_reqs(self.cert_reqs),File "/root/operation/spider/web/web_env/lib/python3.6/site-packages/urllib3/util/ssl_.py", line 273, in create_urllib3_contextcontext.options |= optionsFile "/usr/local/python36/lib/python3.6/ssl.py", line 465, in optionssuper(SSLContext, SSLContext).options.__set__(self, value)File "/usr/local/python36/lib/python3.6/ssl.py", line 465, in optionssuper(SSLContext, SSLContext).options.__set__(self, value)File "/usr/local/python36/lib/python3.6/ssl.py", line 465, in optionssuper(SSLContext, SSLContext).options.__set__(self, value)[Previous line repeated 3308 more times]
RecursionError: maximum recursion depth exceeded while calling a Python object

二、参考:

https://www.jianshu.com/p/7bac63928ba7
https://luxrck.github.io/p/gevent-ssl-infinity-recursion-error/
https://blog.dreamfever.me/2019/03/24/you-gevent-ssl-yin-fa-de-xy-problem/
https://stackoverflow.com/questions/13194064/using-celery-on-processes-and-gevent-in-tasks-at-the-same-time

三、解决:

  1. patch要放在requests前面
import gevent.monkey
gevent.monkey.patch_all()
import requests

2.如果放在celery里面跑,celery 启动时候要加上 -P gevent

这篇关于python3 requests https 请求 报 SSLContext 相关递归错误的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1124953

相关文章

深度解析Python中递归下降解析器的原理与实现

《深度解析Python中递归下降解析器的原理与实现》在编译器设计、配置文件处理和数据转换领域,递归下降解析器是最常用且最直观的解析技术,本文将详细介绍递归下降解析器的原理与实现,感兴趣的小伙伴可以跟随... 目录引言:解析器的核心价值一、递归下降解析器基础1.1 核心概念解析1.2 基本架构二、简单算术表达

SpringBoot 获取请求参数的常用注解及用法

《SpringBoot获取请求参数的常用注解及用法》SpringBoot通过@RequestParam、@PathVariable等注解支持从HTTP请求中获取参数,涵盖查询、路径、请求体、头、C... 目录SpringBoot 提供了多种注解来方便地从 HTTP 请求中获取参数以下是主要的注解及其用法:1

深度解析Java @Serial 注解及常见错误案例

《深度解析Java@Serial注解及常见错误案例》Java14引入@Serial注解,用于编译时校验序列化成员,替代传统方式解决运行时错误,适用于Serializable类的方法/字段,需注意签... 目录Java @Serial 注解深度解析1. 注解本质2. 核心作用(1) 主要用途(2) 适用位置3

Debian 13升级后网络转发等功能异常怎么办? 并非错误而是管理机制变更

《Debian13升级后网络转发等功能异常怎么办?并非错误而是管理机制变更》很多朋友反馈,更新到Debian13后网络转发等功能异常,这并非BUG而是Debian13Trixie调整... 日前 Debian 13 Trixie 发布后已经有众多网友升级到新版本,只不过升级后发现某些功能存在异常,例如网络转

SpringBoot请求参数传递与接收示例详解

《SpringBoot请求参数传递与接收示例详解》本文给大家介绍SpringBoot请求参数传递与接收示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录I. 基础参数传递i.查询参数(Query Parameters)ii.路径参数(Path Va

使用Python的requests库来发送HTTP请求的操作指南

《使用Python的requests库来发送HTTP请求的操作指南》使用Python的requests库发送HTTP请求是非常简单和直观的,requests库提供了丰富的API,可以发送各种类型的HT... 目录前言1. 安装 requests 库2. 发送 GET 请求3. 发送 POST 请求4. 发送

SpringBoot3匹配Mybatis3的错误与解决方案

《SpringBoot3匹配Mybatis3的错误与解决方案》文章指出SpringBoot3与MyBatis3兼容性问题,因未更新MyBatis-Plus依赖至SpringBoot3专用坐标,导致类冲... 目录SpringBoot3匹配MyBATis3的错误与解决mybatis在SpringBoot3如果

Python lambda函数(匿名函数)、参数类型与递归全解析

《Pythonlambda函数(匿名函数)、参数类型与递归全解析》本文详解Python中lambda匿名函数、灵活参数类型和递归函数三大进阶特性,分别介绍其定义、应用场景及注意事项,助力编写简洁高效... 目录一、lambda 匿名函数:简洁的单行函数1. lambda 的定义与基本用法2. lambda

nginx配置错误日志的实现步骤

《nginx配置错误日志的实现步骤》配置nginx代理过程中,如果出现错误,需要看日志,可以把nginx日志配置出来,以便快速定位日志问题,下面就来介绍一下nginx配置错误日志的实现步骤,感兴趣的可... 目录前言nginx配置错误日志总结前言在配置nginx代理过程中,如果出现错误,需要看日志,可以把

Linux中的HTTPS协议原理分析

《Linux中的HTTPS协议原理分析》文章解释了HTTPS的必要性:HTTP明文传输易被篡改和劫持,HTTPS通过非对称加密协商对称密钥、CA证书认证和混合加密机制,有效防范中间人攻击,保障通信安全... 目录一、什么是加密和解密?二、为什么需要加密?三、常见的加密方式3.1 对称加密3.2非对称加密四、