I have trouble installing boto3 inside a virtual environment.
I have done what the document says. First I activated virtual environment. then I did a:
Sudo pip install boto3
Now I enter python
>> import boto3
ImportError: No module named boto3
But if I import boto, it works
>> import boto
>> boto.Version
'2.38.0'
Why does it install boto 2.38 when I installed boto3. I tried closing the terminal and re-opened it. Should I restart the Ubuntu machine?
This question is related to
python
virtualenv
boto3
Don't use sudo
in a virtual environment because it ignores the environment's variables and therefore sudo pip
refers to your global pip installation.
So with your environment activated, rerun pip install boto3
but without sudo.
Do not run as sudo, just type:
pip3 install boto3==1.7.40 --user
Enjoy
I had a similar problem, but the accepted answer did not resolve it - I was not using a virtual environment. This is what I had to do:
sudo python -m pip install boto3
I do not know why this behaved differently from sudo pip install boto3
.
Try this it works sudo apt install python-pip pip install boto3
I have faced the same issue and also not using virtual environment. easy_install is working for me.
easy_install boto3
Though this is an old post, I am posting how I resolved in case it helps others. Since I used sudo to do the install of the boto3 library the permissions on the boto3 directory was set to 700. Either change the permissions to be readable by others or run the python command as sudo.
try this way:
python -m pip install --user boto3
There is another possible scenario that might get some people as well (if you have python and python3 on your system):
pip3 install boto3
Note the use of pip3
indicates the use of Python 3's pip installation vs just pip
which indicates the use of Python 2's.
Source: Stackoverflow.com