Mise à jour du 12/01/2016
--Ajout de "requêtes [sécurité]".
Après avoir installé un nouveau Python ou mis à jour un package, pensez-vous que l'avertissement suivant apparaît lorsque vous exécutez Python? (J'ai été surpris de recevoir un avertissement comme celui-ci lorsque j'ai mis à jour le package Python de SoftLayer et essayé d'exécuter une commande pour la première fois depuis un moment). Dans cet article, je vais vous montrer comment se débarrasser de cet avertissement d'avertissement de plate-forme non sécurisée.
# python test1.py
/usr/lib/python2.6/site-packages/requests/packages/urllib3/util/ssl_.py:79: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
(Omis ci-dessous)
# sl vs list
/usr/lib/python2.6/site-packages/requests/packages/urllib3/util/ssl_.py:79: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
(Omis ci-dessous)
Comme vous pouvez le voir à partir du lien ci-dessous, il est implémenté pour que ce message d'avertissement apparaisse dans requests-2.6.0 ou version ultérieure. Une solution simple consiste donc à utiliser pip pour ramener les requêtes en 2.5.3 en spécifiant la version. http://fossies.org/diffs/requests/2.5.3_vs_2.6.0/requests/packages/urllib3/util/ssl_.py-diff.html
# pip list | grep requests
requests (2.6.2)
# pip install requests==2.5.3
# pip list | grep requests
requests (2.5.3)
Au fait, si vous essayez d'introduire un nouveau package ou une mise à jour, les requêtes qui ont été différées peuvent être mises à jour en même temps (j'espère que vous pourrez rétrograder plus tard) si vous la reporter dans les requêtes 2.5.3. Si vous souhaitez effectuer une nouvelle installation ou une nouvelle mise à jour de package en une seule fois, vous pouvez procéder comme suit.
Exemple d'introduction d'un nouveau package SoftLayer
# pip install SoftLayer requests==2.5.3
Exemple de mise à jour d'un package SoftLayer
# pip install --upgrade SoftLayer requests==2.5.3
http://stackoverflow.com/questions/29099404/ssl-insecureplatform-error-when-using-requests-package
requests[security]Introduction de
# yum install -y openssl-devel python-devel libffi-devel
# pip install 'requests[security]'
Si vous modifiez la version Python en 2.7.9 ou version ultérieure, cet avertissement disparaîtra. Cependant, selon le système d'exploitation, Python est utilisé au niveau du système, par exemple, CentOS et yum de RHEL sont implémentés en Python. Par conséquent, je pense personnellement que changer la version Python au niveau du système n'est pas très souhaitable.
Afin de coexister avec le nouveau progiciel, les systèmes CentOS et RHEL fournissent un composant appelé Collections de logiciels. Vous pouvez l'utiliser pour introduire Python 2.7 ou Python 3.3. http://qiita.com/murachi1208/items/202bff84964188619f57 http://www.idcf.jp/blog/cloud/software-collections-for-centos-6/
En réalité, je pense qu'il est préférable d'utiliser pyenv ou virtualenv, qui peuvent changer de version selon les besoins au niveau de l'utilisateur. Personnellement, c'est très utile. Installer et compiler Python individuellement est assez compliqué, et je veux parfois essayer différentes versions. Comment utiliser ... Il semble qu'il y ait autant de matériaux que vous pouvez si vous google y compris Qiita, donc je vais l'omettre cette fois. https://github.com/yyuu/pyenv-virtualenv http://qiita.com/yuta_h3/items/2988c4d0811bf8c344c0 http://qiita.com/search?page=2&q=pyenv&sort=rel&utf8=%E2%9C%93
https://urllib3.readthedocs.org/en/latest/security.html?highlight=insecureplatformwarning http://stackoverflow.com/questions/29134512/insecureplatformwarning-a-true-sslcontext-object-is-not-available-this-prevent
Recommended Posts