urllib funktioniert nicht

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
JakobDev
User
Beiträge: 63
Registriert: Mittwoch 17. Juli 2019, 17:20

Der folgende Code führt bei mir zu einer Fehlermeldung:

Code: Alles auswählen

urllib.request.urlretrieve("https://example.com","/tmp/test")
Das hier ist die Feglermeldung:

Code: Alles auswählen

urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:1108)>
Dabei ist die benutzte URL vollkommen egal. Es scheint ein Problem mit einen zertifikat zu geben. Weiss jemand wie man das lösen kann? Ich bin auf meiner Suche leider nur auf Workarounds gestoßen.
Benutzeravatar
snafu
User
Beiträge: 6861
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Für heutige Anforderungen ist urllib nicht mehr zeitgemäß. Man kann zwar https Seiten damit aufrufen, auch mit ordentlicher Prüfung des Zertifikats, aber das ist umständlich und somit fehleranfällig. Installiere dir am besten das requests Modul und ruf die Seite damit auf.
Benutzeravatar
snafu
User
Beiträge: 6861
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Falls du es dennoch mit der Standardbibliothek versuchen willst, wird hier ein Weg beschrieben:
https://tuxpool.blogspot.com/2016/05/ac ... igned.html

Interessant für deinen Fall wird es ab ctx2.

Alternativ über das angesprochene requests-Modul gehen und dort das eigene Zertifikat über den cert-Parameter der get()-Methode mitgeben.
Antworten