boto3 python 2.7 ImportError: Nu există niciun modul numit boto3 USER_BASE USER_SITE site packages doesn’t exist (Programare, Python, Macos, Pip, Python Import, Boto3)

AKS a intrebat.
a intrebat.

De ce python nu găsește boto3 când pip sau pip3 arată că este instalat.

Eu sunt pe Mac mașină. Am încercat pip/pip3 cu / fără sudo. Am încercat să schimb și variabila PATH cu câteva căi, dar nu am avut noroc.

PATH: /Library/Frameworks/Python.framework/Versions/3.5/bin:/Users/arun/.sdkman/candidates/gradle/current/bin:/Users/arun/aks/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

și

$ python -c 'import sys; print sys.path'|tr ',' '12'
[''
 '/Library/Python/2.7/site-packages/RBTools-0.5.7-py2.7.egg'
 '/Library/Python/2.7/site-packages/wfawsclitools-0.1-py2.7.egg'
 '/Library/Python/2.7/site-packages/PyYAML-3.12-py2.7-macosx-10.12-intel.egg'
 '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip'
 '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7'
 '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin'
 '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac'
 '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages'
 '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk'
 '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old'
 '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload'
 '/Library/Python/2.7/site-packages'
 '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python'
 '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC']

și

$ python -m site
sys.path = [
    '/Users/arun/ubuntu-vagrant-box',
    '/Library/Python/2.7/site-packages/RBTools-0.5.7-py2.7.egg',
    '/Library/Python/2.7/site-packages/wfawsclitools-0.1-py2.7.egg',
    '/Library/Python/2.7/site-packages/PyYAML-3.12-py2.7-macosx-10.12-intel.egg',
    '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip',
    '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7',
    '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin',
    '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac',
    '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages',
    '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk',
    '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old',
    '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload',
    '/Library/Python/2.7/site-packages',
    '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python',
    '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC',
]
USER_BASE: '/Users/arun/Library/Python/2.7' (doesn't exist)
USER_SITE: '/Users/arun/Library/Python/2.7/lib/python/site-packages' (doesn't exist)
ENABLE_USER_SITE: True

Pașii pe care i-am parcurs până acum:

[[email protected] ~/aks] $ pip install --upgrade pip
Requirement already up-to-date: pip in /usr/local/lib/python2.7/site-packages
[[email protected] ~/aks] $ pip install boto3
Requirement already satisfied: boto3 in /usr/local/lib/python2.7/site-packages
Requirement already satisfied: botocore<1.6.0,>=1.5.0 in /usr/local/lib/python2.7/site-packages (from boto3)
Requirement already satisfied: jmespath<1.0.0,>=0.7.1 in /usr/local/lib/python2.7/site-packages (from boto3)
Requirement already satisfied: s3transfer<0.2.0,>=0.1.10 in /usr/local/lib/python2.7/site-packages (from boto3)
Requirement already satisfied: docutils>=0.10 in /usr/local/lib/python2.7/site-packages (from botocore<1.6.0,>=1.5.0->boto3)
Requirement already satisfied: python-dateutil<3.0.0,>=2.1 in /usr/local/lib/python2.7/site-packages (from botocore<1.6.0,>=1.5.0->boto3)
Requirement already satisfied: futures<4.0.0,>=2.2.0; python_version == "2.6" or python_version == "2.7" in /usr/local/lib/python2.7/site-packages (from s3transfer<0.2.0,>=0.1.10->boto3)
Requirement already satisfied: six>=1.5 in /usr/local/lib/python2.7/site-packages (from python-dateutil<3.0.0,>=2.1->botocore<1.6.0,>=1.5.0->boto3)
[[email protected] ~/aks] $ pip3 install boto3
Requirement already satisfied (use --upgrade to upgrade): boto3 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages
Requirement already satisfied (use --upgrade to upgrade): s3transfer<0.2.0,>=0.1.0 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from boto3)
Requirement already satisfied (use --upgrade to upgrade): botocore<1.5.0,>=1.4.1 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from boto3)
Requirement already satisfied (use --upgrade to upgrade): jmespath<1.0.0,>=0.7.1 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from boto3)
Requirement already satisfied (use --upgrade to upgrade): docutils>=0.10 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from botocore<1.5.0,>=1.4.1->boto3)
Requirement already satisfied (use --upgrade to upgrade): python-dateutil<3.0.0,>=2.1 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from botocore<1.5.0,>=1.4.1->boto3)
Requirement already satisfied (use --upgrade to upgrade): six>=1.5 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from python-dateutil<3.0.0,>=2.1->botocore<1.5.0,>=1.4.1->boto3)
You are using pip version 8.1.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
[[email protected] ~/aks] $ which python
/usr/bin/python
[[email protected] ~/aks] $ `which python` --version
Python 2.7.10
[[email protected] ~/aks] $ python
Python 2.7.10 (default, Jul 30 2016, 19:40:32) 
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import boto3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named boto3
>>> ^D
[[email protected] ~/aks] $

Pe de altă parte, dacă alerg python3, funcționează pentru import boto3 dar nu și pentru import boto.

Comentarii

  • Care este ieșirea din python -c 'import sys; print sys.path'? Conține /usr/local/lib/python2.7/site-packages? –  > Por Leon.
  • @Leon Nu, nu conține, am actualizat întrebarea mea cu această ieșire pentru a vă oferi o referință –  > Por AKS.
  • Încearcă asta: PYTHONPATH=/usr/local/lib/python2.7/site-packages python -c 'import boto3; print dir(boto3)'. –  > Por Leon.
  • Vă rugăm să includeți ieșirea din python -m site în întrebarea dumneavoastră. –  > Por wim.
  • Se pare că pip și python (pentru versiunea 2.7 de python) nu sunt de acord cu privire la calea de instalare/cercetare a pachetului. –  > Por Leon.
3 răspunsuri
wim

Instalați astfel:

python -m pip install --user boto3

Comentarii

  • A funcționat, mă întreb de ce ai primit 89.9k 🙂 De asemenea, pentru python3 prompt, import boto nu a funcționat, rulând python3 -m pip install --user boto a rezolvat și asta. Deci, acum python și python3 ambele au import boto și import boto3 funcționează în prompterele lor sau într-un program .py python în care import este prezentă pentru boto/boto3. –  > Por AKS.
  • A avut aceeași problemă cu import credstash, rezolvat prin rularea python -m pip install --user credstash –  > Por AKS.
  • M-a ajutat prea mult. Mulțumesc! –  > Por Amit Teli.
  • Tu… Sunteți… A… DUMNEZEU…  > Por Kyle Bridenstine.
  • Deși răspunsul este vechi de aproape un an, m-a ajutat mult astăzi. Btw, știi de ce funcționează aceste soluții și modul obișnuit pip3 install module nu face? –  > Por Nav.
Michael

M-am confruntat cu aceeași problemă zilele trecute. Aveam python 2.7 instalat pe Mac-ul meu (presupun că era instalat în mod implicit). Apoi am instalat homebrew și l-am folosit pentru a obține cea mai recentă versiune de instalare python:
brew install python

Apoi, am avut două versiuni de python, ceea ce este în regulă. Brew a instalat pip3 împreună cu Python 3.6.5.

Așa că, apoi, am putut rula acest lucru pentru a obține boto3: pip3 install boto3Pentru a vă asigura că este accesibil, utilizați comanda python3, nu python mai vechi. Deci, în cazul meu, mi-am rulat codul cu:
python3 signURL.py

nbari

Doar în cazul în care acest lucru a funcționat pentru mine după actualizarea la ansible 2.4.0.0:

pip install --upgrade --user boto3

Asta mi-a recreat $HOME/Library/Python/2.7/lib/python/site-packages