7
votes

de urllib3.util.ssl_ import (ImportError: impossible d'importer le nom ssl

Mes ressources:

Python 2.7, Ubunutu 18.04, Pycharm, virtual box oracle

J'ai une solution d'automatisation construite en python. La solution peut être exécutée à la fois depuis cmd ou pycharm bien sûr. 2 options pour exécuter la solution d'automatisation.

"/home/ohad/.local/lib/python2.7/site-packages/botocore/httpsession.py", line 7, in <module>
    from urllib3.util.ssl_ import (
ImportError: cannot import name ssl

Une fois que jenkinsRun.py est exécuté, il exécutera chaque main.py comme ceci:

jenkinsRun.py

Notez que c'est ainsi que je l'ai implémenté il y a 3 ans..pourrait être de meilleurs moyens comme utiliser __import__ , mais il faut un moyen de réussir arguments, etc ...

Quoi qu'il en soit, lors de l'exécution:

python main.py arg a,b,c..

Tout va bien.

Lors de l'exécution:

os.system('python main.py %s %s %s %s %s %s'%(STD,config.VpcStackName, '-dryrun', 'false', '-tenant' ,config.PROD_STAGE_Tenant))

qui devrait exécuter main à chaque fois avec diff args J'obtiens une exception:

python main.py args a,b,c...(run 1 suite of tests)
python jenkinsRun.py arg a,b,c...(run main.py with diff args each time -lets say 5 time for instance)

Cela ne se produit que lorsque j'exécute le code sur mon nouveau environnement (voir les ressources ci-dessus) la semaine dernière, j'avais une vieille boîte virtuelle avec ubuntu 15.04 (ancienne) qui fonctionnait bien (je n'ai pas touché à la vode depuis).

J'ai installé sur une nouvelle boîte virtuelle à partir de librairies, pilotes, etc. etc.

Des idées?


3 commentaires

Juste pour être sûr: êtes-vous certain d'appeler Python 2.x ? Ubuntu 18.04 a 3.x par défaut, alors assurez-vous que vous ne démarrez pas accidentellement le script en utilisant une autre version de python


Vérification, mais la course principale est parfaite, contrairement à jenkinsRun.


tu avais raison! L'interpéteur pycharm était / usr / bin / python ce qui est ok, mais quand il appelle os.system ('python main bla bla ..) il pointait vers /usr/local/bin/python.Merci beaucoup .BTW -comment peut je ferme cette question


4 Réponses :


3
votes

Juste pour être sûr: êtes-vous certain d'appeler Python 2.x ?

Ubuntu 18.04 a Python 3.x par défaut, alors assurez-vous de ne pas démarrer accidentellement le script en utilisant une autre version de Python.


0 commentaires

2
votes

J'ai eu une erreur similaire après avoir créé un nouvel environnement (qui utilise également Boto3). Il s'est avéré être une erreur DLL ( ImportError: le chargement de la DLL a échoué ), qui a été interceptée par le module SSL entraînant l'erreur de la question: ImportError: impossible d'importer le nom ssl .

La solution pour moi était d'ajouter un dossier supplémentaire au chemin: path_to_anaconda / Anaconda3 / Library / bin . De cette façon, le chargement de la DLL réussit et l'erreur ImportError donnée est résolue.


0 commentaires

11
votes

Il peut y avoir un problème avec l'installation. J'ai réinstallé sur MAC et cela a fonctionné

sudo pip install awscli --ignore-installed six


0 commentaires

0
votes

Je travaillais chez PyCharm quand j'ai frappé ce mur.

Je l'ai résolu en redirigeant le chemin vers mon environnement Anaconda, que je garde mieux approvisionné et à jour.

 Sélectionnez Modifier les configurations

 entrez la description de l'image ici


0 commentaires