python network_error ai_generated true

aiohttp.client_exceptions.ClientConnectorSSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed

ID: python/aiohttp-client-connector-ssl-error

Also available as: JSON · Markdown · 中文
80%Fix Rate
84%Confidence
0Evidence
2024-07-05First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
3.9 active
3.10 active

Root Cause

The SSL certificate of the remote server is invalid, expired, or not trusted by the system's CA bundle.

generic

中文

远程服务器的 SSL 证书无效、已过期或不受系统 CA 包信任。

Workarounds

  1. 80% success Update system CA certificates
    pip install certifi
    # or update OS CA bundle
  2. 90% success Provide a custom SSL context with trusted certificates
    import ssl
    ssl_context = ssl.create_default_context(cafile='/path/to/cert.pem')
    async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(ssl=ssl_context)) as session:

Dead Ends

Common approaches that don't work:

  1. Disabling SSL verification entirely with ssl=False 30% fail

    This bypasses security and may lead to man-in-the-middle attacks; also not recommended for production.

  2. Using a custom SSL context without proper certificates 60% fail

    If the custom context is not configured correctly, the error persists.