aiohttp 库出现 SSL 错误 TLSV1_ALERT_INTERNAL_ERROR

SSL error TLSV1_ALERT_INTERNAL_ERROR with aiohttp library

我有一个应用程序通过 aiohttp 库发出 api 请求。

session = aiohttp.ClientSession()
session.get(url, proxy=get_proxy_v2(), ssl=False)

我赚了大约 10 requests/second。大约每小时一次,我收到以下错误:

aiohttp.client_exceptions.ClientConnectorSSLError: Cannot connect to host <REDACTED_HOST>:443 ssl:False [[SSL: TLSV1_ALERT_INTERNAL_ERROR] tlsv1 alert internal error (_ssl.c:997)]

最初,我没有 ssl=False 但添加了它来尝试避免此错误,但它没有效果,大约每小时一次我仍然会收到此错误。我可以简单地添加一个 try catch 来捕获错误并重试,但我想正确地修复这个错误。尽管我将 ssl 设置为 False,但我对如何收到 SSL 错误感到有点困惑。不知道从这里去哪里。

I am a bit confused on how I am getting a SSL error even though I have ssl set to False.

ssl=False 仅忽略证书验证错误。但是 TLSV1_ALERT_INTERNAL_ERROR 与证书验证无关,所以这个选项在这里没有帮助。除此之外 ssl=False 是一个非常糟糕的主意,因为它显着降低了 HTTPS 提供的安全性 - 它将不再防止中间人攻击。

可能会出现 TLSV1_ALERT_INTERNAL_ERROR 的各种原因,例如没有通用密码或协议版本、需要客户端证书、服务器过载等等。在互联网上连接任意服务器时,预计有时会发生此类错误。捕获错误并暂时忽略此服务器通常是正确的选择。

如果真正想连接的服务器发生错误,则必须分析此特定服务器出现问题的原因,然后尝试解决此特定原因,即没有通用的解决方案。