我使用Django芹菜任务连接到Facebook Graph API,并使用Gevent请求库。我经常遇到的问题是,偶尔我会发现EOF违反了协议异常。我四处搜索,各种来源提供了不同的修复方法,但似乎都不起作用。
我尝试过用monkey修补ssl模块(gevent.monkey.patch_all())和其他一些模块,但没有成功。
我甚至不确定这是否是openssl问题,因为在应用Gevent优化之前,我还没有遇到过这一问题
Connection error: [Errno 8] _ssl.c:504: EOF occurred in violation of protocol
Traceback (most recent call last):
File "/home/user/workspace/startup/project/events/tasks.py", line 52, in _process_page
data = requests.get(current_url)
File "/home/user/workspace/startup/env/local/lib/python2.7/site-packages/requests/api.py", line 55, in get
return request('get', url, **kwargs)
File "/home/user/workspace/startup/env/local/lib/python2.7/site-packages/requests/api.py", line 44, in request
return session.request(method=method, url=url, **kwargs)
File "/home/user/workspace/startup/env/local/lib/python2.7/site-packages/requests/sessions.py", line 354, in request
resp = self.send(prep, **send_kwargs)
File "/home/user/workspace/startup/env/local/lib/python2.7/site-packages/requests/sessions.py", line 460, in send
r = adapter.send(request, **kwargs)
File "/home/user/workspace/startup/env/local/lib/python2.7/site-packages/requests/adapters.py", line 250, in send
raise SSLError(e)
SSLError: [Errno 8] _ssl.c:504: EOF occurred in violation of protocol
我正在使用最新的1.0rc Gevent版本。
尽管URL是正确的,但仍会不时弹出另一个问题:连接被“错误(2,‘没有这样的文件或目录’”:/ID/events中断后重试(仍有5次尝试)?限额=5000
在为我的机器学习获取tweet时,我也遇到了同样的错误。下面的pip安装对我很有帮助。这项工作:
pip install ndg-httpsclient
pip install pyopenssl
pip install pyasn1
它删除了我的ssler错误:EOF发生违反协议(_ssl.c:590)的错误。
希望能有帮助。
我安装了最新的Python2.7 (2.7.11),问题就消失了。我相信这个问题甚至可以在2.7.6中解决(我在苹果OSX上使用2.7.5)。
使用J.F Sebastian建议的强制TLSv1修复修复了我所面临的所有问题。
关于以下方面的未来问题提示:
>
DNSError异常-将Gevent0.13升级。X到1.0rc修复了此问题
SSL问题-看看J. F Sebastian提供的修复链接
我正在尝试连接Neo4j,但我一直收到这个错误。我试过了 但当我尝试连接时,会出现这个错误 SecurityError:无法建立到“EOF违反协议(_ssl.c:841)”的安全连接 我可以在打字时连接到浏览器http://localhost:7474/browser/ 以下是完整的错误日志: ----------------------------------------------------
我正在使用gevent为游泳池运行许多芹菜任务(20000个)(也包括猴子修补所有)。这些任务中的每一项都会通过第三方服务(如adwords)来获取数据。 由于潜在的SSL错误,我一直有任务失败。下面是一些异常的堆栈跟踪(没有特定的顺序,这些是单独任务的失败)。我偶尔也会遇到WantWriteError和ZeroReturnError,但EOF错误似乎最多。 这些错误发生在使用不同的客户端库时,如
我使用ArchLinux,python 3.4,openSSL 1.0.2d。当我请求https://www.supercash.cz/我得到这个错误。无论我使用请求还是在urllib中构建,总是会有相同的错误。此网站的SSL证书接缝在浏览器Chrome。 我试过这个,但它只在python2中有效。7错误-urlopen错误[Errno 8]\u ssl。c:504:EOF违反了协议,需要帮助 这
我正在向我使用httplib2拥有的REST服务发出HTTPS GET请求,但我们得到了错误: 所有其他客户端都运行良好(浏览器、Java客户端等...),只有一个小例外,PHP curl需要设置为使用SSL v3。 我已经搜索了周围,它似乎确实是一个关于SSL版本的错误,但我似乎找不到一种方法来改变它在http://www. ttplib2.除了改变源代码中的以下行之外,还有什么方法可以解决这个
问题内容: 我有以下几点: 然后两个功能: 其中ReadLogStash是正在运行的goroutine。如果另一侧关闭,我得到EOF。ReadLogStash中的一个好的实现是什么,当它获得EOF时,尝试每X秒重新建立一次连接? 问题答案: Go有同步和沟通的渠道,请使用它们! 使您的连接处于循环状态,并让它等待某种消息返回通道。 除非您在ReadLogStash中具有更多功能,否则您可能只能使用