Ma question est simple: python 3.5.1-3 est-il construit sans prise en charge de SSL sur Ubuntu 16.04?
root@intranet:/opt/letsencrypt# /usr/bin/python3
Python 3.5.2 (default, Jul 5 2016, 12:43:10)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import HTTPSHandler
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'HTTPSHandler'
>>>
Les autres informations:
root@intranet:/opt/letsencrypt# dpkg-query -l 'python3*' | grep ssl
ii python3-openssl 0.15.1-2build1 all Python 3 wrapper around the OpenSSL library
root@intranet:/opt/letsencrypt# dpkg-query -l 'libssl*' | grep dev
ii libssl-dev:AMD64 1.0.2g-1ubuntu4.2 AMD64 Secure Sockets Layer toolkit - development files
ii libssl-doc 1.0.2g-1ubuntu4.2 all Secure Sockets Layer toolkit - development documentation
Python3 dans les référentiels est compilé avec le support SSL . L'erreur que vous obtenez est due au fait que HTTPSHandler
est un module tiers Python et ne fait pas partie de la bibliothèque standard Python.
Vous devrez installer ce module avec python3 pip install
afin de le faire reconnaître par votre interpréteur Python3.
Vous pouvez vérifier la prise en charge HTTPS/SSL dans Python3 avec les éléments suivants:
from urllib.request import urlopen
urlopen('https://askubuntu.com').read()
Il va cracher un tas de HTML, mais le fait qu’il retourne une tonne de HTML indique qu’il prend en charge SSL.
(Merci à la réponse d'Oli à une question similaire mais différente pour l'extrait de code.)