gpt4 book ai didi

python - PyCURL:TLS 握手错误

转载 作者:行者123 更新时间:2023-12-01 00:00:06 24 4
gpt4 key购买 nike

我正在使用 PyCURL 来测试我们提供的重定向服务 - 用户点击 http://xyz.com/asdf/并被重定向到 https://a.com , https://b.comhttps://c.com .

我正在尝试使用 PyCURL 来请求 http://xyz.com ,并打印出(但不是 HTTP 请求)字符串“https://{a|b|c}.com”,但只要目标 URL 是 HTTPS 而不是 HTTP,PyCURL.request() 方法就会抛出以下异常:

(35,'gnutls_handshake() 失败:已收到 TLS 致命警报。')

谷歌搜索“pycurl tls error”并没有找到很多结果,除了暗示 Ubuntu 的 PyCURL 使用 GnuTLS 而不是 OpenSSL 的结果。这是导致我的问题的原因吗?如果是这样,如何配置 PyCURL 以使用 OpenSSL?

我的操作系统是 Ubuntu 9.10、Python 2.6,这是我的 PyCURL 版本信息

>>> pycurl.version_info()

(3, '7.19.5', 463621, 'x86_64-pc-linux-gnu', 1597, 'GnuTLS/2.8.3', 0, '1.2.3.3', ('tftp', 'ftp', 'telnet', 'dict', 'ldap', 'ldaps', 'http', '文件', 'https', 'ftps'), 无, 0, '1.15')

提前致谢!

最佳答案

我刚刚解决了同样的问题。我不能 100% 确定出了什么问题。但是我通过 apt-get install python-pycurl 安装了 pycurl,我认为默认情况下使用 gnutls,但在我看来它应该是我的系统上的 openssl。

我通过执行以下操作解决了该问题:

export PYCURL_SSL_LIBRARY=[openssl|gnutls|nss](选择 openssl、gnutls 或 nss 3 个之一,不带括号)

pip install pycurl --upgrade

如果您的 pycurl 版本已经是最新版本,请通过执行以下命令 pip uninstall pycurl 将其删除,然后运行上述命令。

来源:http://pycurl.sourceforge.net/doc/install.html

关于python - PyCURL:TLS 握手错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1942719/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com