MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors
python3.6开启多协程报错
代码
import gevent
from gevent import monkey
monkey.patch_all() # 把程序变成协作式运行,---异步
from gevent.queue import Queue
import time, requests
from bs4 import BeautifulSoup
报错信息
MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors, including RecursionError on Python 3.6. It may also silently lead to incorrect behaviour on Python 3.7. Please monkey-patch earlier. See https://github.com/gevent/gevent/issues/1016. Modules that had direct imports (NOT patched): ['_shaded_thriftpy.transport._ssl (S:\\development_tools\\development_python\\pycharm\\pycharm\\PyCharm 2019.3.2\\plugins\\python\\helpers\\third_party\\thriftpy\\_shaded_thriftpy\\transport\\_ssl.py)']. monkey.patch_all() # 把程序变成协作式运行,---异步
看过很多帖子,多数就是把
import gevent
from gevent import monkey
monkey.patch_all()
放在最前面,如上图代码,我已经放在最前面了,但是还是会报相同的错误。下面是环境安装的gevent
版本
换了gevent
低版本
还是提示相同错误,排除geven
t版本问题。
之前用的是pycharm
分块代码执行功能,怀疑分块代码运行出错
删除之前写的python文件,新建一个,代码如下:再次运行
新建文件代码:
import gevent
from gevent import monkey
monkey.patch_all() # 把程序变成协作式运行,---异步
from gevent.queue import Queue
import time, requests
from bs4 import BeautifulSoup
执行结果:
S:\project_environment\environment_python\python-3.6.6\python.exe M:/program_all/pro_python/python_course/crawling/CrawlingVideoTop100.py
Traceback (most recent call last):File "M:/program_all/pro_python/python_course/crawling/CrawlingVideoTop100.py", line 82, in <module>work.put_nowait(i)
TypeError: put_nowait() takes exactly one argument (0 given)Process finished with exit code 1
大吉大利,终于不再出现上面的错误了,也算问题解决了。
总结:
解决方案一:
import gevent
from gevent import monkey
monkey.patch_all()
上面三行代码写在所有引入语句最前面。
解决方案二:
删除源文件新建新文件。
MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors相关推荐
- 【错误集】 MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors
原代码 import geventfrom gevent.queue import Queue,Empty import time import requests #把下面有可能有IO操作的单独坐上标 ...
- 【解决方案】Monkey-patching ssl after ssl has already been imported may lead to errors
简述 最近换成了Python 3.6 发现以前我写了一个爬虫用不了了. https://blog.csdn.net/a19990412/article/details/80149453 遇到这个问题之 ...
- python中gevent模块使用及出现MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may
出现MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors需要调整 ...
- python gevent asyncio_python用from gevent import monkey; monkey.patch_all()之后报ssl等错误
楼主今天第一次用python基于greenlet实现的第三方协程库gevent,由于gevent在切换IO操作(文件IO.网络IO)时是自动完成的,所以gevent需要通过修改Python自带的一些阻 ...
- 【计算机网络】网络安全 : 运输层安全协议 ( 安全套接字层 SSL | 运输层安全 TSL | SSL 服务 | SSL 安全会话建立流程 )
文章目录 一.运输层安全协议 二.运输层使用 SSL 前后对比 三.SSL 与 TSL 对比 四.SSL 服务 五.SSL 安全会话建立过程 一.运输层安全协议 运输层安全协议 : ① 安全套接字层 ...
- 【SSL】SSL工作原理
SSL技术白皮书 关键词:SSL,PKI,MAC 摘 要:SSL利用数据加密.身份验证和消息完整性验证机制,为基于TCP等可靠连接的应用层协议提供安全性保证.本文介绍了SSL的产生背景.安全机制 ...
- python的猴子补丁(Monkey Patching)
0. 参考文档 参考文档如下: https://achowdhary.com/monkey-patching/ https://www.cnblogs.com/xp1315458571/p/16049 ...
- 27.Python中的猴子补丁 (Monkey Patching)
<Python编程的术与道:Python语言进阶>视频课程 <Python编程的术与道:Python语言进阶>视频课程链接:https://edu.csdn.net/cours ...
- ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to
最近再用mac下的pycharm编写python文件,在抓取制定网站的错误提示每次运行都直接报错如下: ssl.SSLCertVerificationError: [SSL: CERTIFICATE_ ...
最新文章
- oracle数据库如何写翻页_ORACLE数据库分页查询/翻页 最佳实践
- java mysql 变量_MySQL基础_变量
- NABCD项目需求分析
- Python之路,day22-BBS基础
- 【OpenCV3】cv::Mat中的数据按行列写入txt文件中
- 王爽 汇编 实验10
- [PAT乙级]1022 D进制的A+B
- Centos下Nodejs+npm环境-部署记录
- 这一项经典功能即将回归!手机厂商们都后悔了...
- IT运维:如何“hold”住网管的幸福
- 华为认证的好处是什么?考试费是多少?
- 一篇文章学会er图绘制
- Intel 80286工作模式
- David Time Capsule Kick Off
- Unity功能记录(七)------ UGUI获取UI在Canvas下的坐标/根据UI位置获取屏幕图片/二维码识别
- c语言字符数组讲课PPT,C语言数组应用与字符串.ppt
- CF140C.New Year Snowmen(优先队列+map)
- 递推DP(至少和至多之间的转换
- Node + 讯飞语音 定时播放天气预报音频
- liquibase(数据库管理)
热门文章
- 9月20日云栖精选夜读:异构计算高性能计算分论坛——揭秘拿什么实现超算平民化、国际化?...
- github:master提交项目到远程仓库出现“There isn’t anything to compare.”
- html5工业相机,AVT工业相机
- 如何修改C盘下的用户名
- 一张表格搞懂那些特殊的IP地址
- windows10+ubuntu 16 04+双硬盘(SSD+HDD)分区(图文)
- 使用SSH协议搭建隧道(附搭建环境超详细)
- 手机计算机怎么恢复出厂设置密码,如何找回手机锁屏密码?
- APP逆向案例之(三)sign 参数破解
- 如何选择GPS定位器