Ältere Python-Standardbibliotheken haben Serverzertifikate nicht mit https validiert. Wenn Sie https ordnungsgemäß verwenden möchten, wurde daher immer empfohlen, Anfragen zu verwenden, die Sie anstelle der Standardbibliothek verwenden möchten. [^ 1]
Seit einigen Jahren wird die Bedeutung von https hervorgehoben, und es ist schlecht, dass die Standardbibliothek nicht standardmäßig überprüft wird. Daher wurde sie ab Python 3.5 mithilfe des Standard-CA-Zertifikats des Systems überprüft .. (PEP 476)
Diese neue Funktion hat viel mit Sicherheit zu tun und wurde auf Versionen vor 3.5 zurückportiert. Insbesondere 2.7.9 und 3.4.3.
Wenn Sie eine spätere Version von Python verwenden, sollten Sie das Zertifikat Ihres Servers überprüfen, auch wenn Sie die Standardbibliothek urllib verwenden. Wenn Sie die Reduzierung von Abhängigkeiten gegenüber den Vorteilen von urllib3 / Anfragen wie Verbindungspools priorisieren möchten, stellen Sie sicher, dass Ihre Python-Version später ist.
[^ 1]: Fordert Bundles an und verteilt cacerts.pem, das aus Mozillas CA-Liste erstellt wurde. (Siehe auch: certifi) Wenn die CA-Liste aufgrund des Hinzufügens einer CA oder einer von einer CA durchgeführten Aktion aktualisiert wird, bündeln Sie die Anforderungen. Stellen Sie sicher, dass es sich in dem widerspiegelt, was Sie haben, und aktualisieren Sie es.