从urllib3.util.ssl_ import(ImportError:无法导入名称ssl

时间:2019-01-16 12:31:01

标签: python python-2.7

我的资源

Python 2.7,Ubunutu 18.04,Pycharm,虚拟盒Oracle

我有一个内置于python中的自动化解决方案。 该解决方案当然可以从cmdpycharm处运行。 2种运行自动化解决方案的选项。

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)

运行jenkinsRun.py后,它将像这样执行每个main.py

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

请注意,这就是我3年前实现的方式。.可能是使用__import__之类的更好方法,但需要传递参数的方式,等等。

无论如何,运行时:

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

一切都很好。

运行时:

jenkinsRun.py

每次使用diff args都要运行main我得到异常:

"/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

仅当我在新环境中运行代码时才会发生这种情况(请参见上面的资源) 上周,我有一个带有ubuntu 15.04(旧)的旧virtul盒,该盒一切正常(此后一直没有碰到这个视频)。

我已经从头开始安装了新的虚拟盒子,驱动程序等。

有什么想法吗?

6 个答案:

答案 0 :(得分:11)

可能与安装有关。我确实在MAC上重新安装了,并且可以正常工作

sudo pip install awscli --ignore-installed six

答案 1 :(得分:1)

只需确保:您确定要调用Python 2.x吗?

Ubuntu 18.04的默认设置为Python 3.x,因此请确保不要意外使用其他python版本启动脚本。

答案 2 :(得分:0)

创建新环境(也使用Boto3)后,我遇到了类似的错误。原来是DLL错误(ImportError: DLL load failed),该错误被SSL模块捕获,导致了来自问题ImportError: cannot import name ssl的错误。

对我来说,解决方案是在路径path_to_anaconda/Anaconda3/Library/bin中添加一个文件夹。这样,DLL加载成功并解决了给定的ImportError。

答案 3 :(得分:0)

撞墙时我在PyCharm工作。

通过将路径重定向到我的Anaconda环境来解决该问题,我一直在对其进行更好的配置和更新。

Select Edit Configurations

enter image description here

答案 4 :(得分:0)

通过以下命令行在我的 Mac 上更新最新版本的 awscli 解析。

<块引用>

curl "https://awscli.amazonaws.com/AWSCLIV2-2.0.30.pkg" -o

<块引用>

"AWSCLIV2.pkg" sudo 安装程序 -pkg AWSCLIV2.pkg -target /

参考:

https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-mac.html#cliv2-mac-install-cmd

答案 5 :(得分:0)

卸载、安装、甚至创建环境后……这对我有用!

https://stackoverflow.com/a/60405693