Python pip ничего не может установить

Я пытаюсь установить pandas с помощью pip.

sudo pip install pandas

И я получаю следующую ошибку:

➜  ~ which python
/usr/bin/python

➜  ~ python --version
Python 2.7.10

➜  ~ sudo pip install pandas
The directory '/Users/bdisha/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/Users/bdisha/Library/Caches/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting pandas
  Could not fetch URL https://pypi.python.org/simple/pandas/: There was a problem confirming the ssl certificate: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:590) - skipping
  Could not find a version that satisfies the requirement pandas (from versions: )
No matching distribution found for pandas

Что я делаю неправильно?

**

PS: Note that the same happens within a virtual environment

**

Возможно, вам потребуется обновить свою версию pip pip install --upgrade pip, а затем запустить pip install pandas

APorter1031 10.04.2018 22:07

Вы уверены, что хотите установить пакеты в предустановленный Apple Python 2.7. Если да, вы уверены, что не хотите использовать virtualenv? Если это так, вам следует очистить права доступа к каталогу (как описано в сообщениях об ошибках) и обновить pip, и все должно начать работать.

abarnert 10.04.2018 22:09

@abarnert такая же ошибка возникает и в моей виртуальной среде

Becks 10.04.2018 22:12

Проблема с разрешением кажется предупреждением (вы все равно должны это исправить), потому что на этом установка не остановилась. Для сертификата это может быть news.ycombinator.com/item?id=13539034? В любом случае проверьте свою версию TLS: python -c "import json, urllib2; print json.load(urllib2.urlopen('https://www.howsmyssl.com/a/check‌​'))['tls_version']" Тогда вам, вероятно, следует обновить поставщика библиотеки SSL (OpenSSL? - если да, попробуйте openssl version -a - это просто тест, не знаю, как обновить его на OSX).

CristiFati 10.04.2018 22:16

@ APorter1031 Я попытался обновить pip, но произошла та же ошибка:

Becks 10.04.2018 22:16

В вашей OS X, вероятно, установлена ​​устаревшая версия Python, у которой слишком старый openssl. pip может обойти это, но не раньше, чем вы обновите его, что вы не можете сделать, потому что pip не запускается для обновления, верно? Я считаю, что вы можете обойти это, запустив pip install --upgrade --trusted-host pypi.python.org pip. Если это не сработает, вы можете перейти на страницу pip в PyPI, загрузить колесо вручную и выполнить обновление из локального файла.

abarnert 10.04.2018 22:16

@CristiFati TLS 1.0

Becks 10.04.2018 22:17

@abarnert Я попробовал вашу команду --trusted-host и получаю ту же чертову ошибку: не удалось получить URL-адрес pypi.python.org/simple/pip: возникла проблема с подтверждением сертификата ssl: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] версия протокола предупреждений tlsv1 (_ssl.c: 590) - пропуск. Требование уже обновлено: pip in ./.virtualenvs/my_virtual_env/lib/python2.7/site-packages

Becks 10.04.2018 22:18

Думаю это дубликат: stackoverflow.com/a/38908406/1240268

Andy Hayden 10.04.2018 22:20

Какие версии pip и setuptools у вас есть? (Если вы не знаете, как посмотреть, найдите их в pip list.)

abarnert 10.04.2018 22:21

@AndyHayden Ответ, который вы связали, предполагает то же самое, что я попросил OP попробовать, но это не сработало.

abarnert 10.04.2018 22:21

Кроме того, как вы вообще установили pip? (И virtualenv, если бы не только sudo pip install virtualenv)

abarnert 10.04.2018 22:23

@abarnert pip уже был установлен, и я установил virtualenvwrapper с помощью pip ... Вдруг pip больше ничего не устанавливает

Becks 10.04.2018 22:31

@abarnert версия pip: pip 9.0.1 И версия setuptools: setuptools 28.8.0

Becks 10.04.2018 22:32

Я думаю, что pip 9.0.1 должен быть достаточно новым для обходного пути старого SSL (версия 10 находится в стадии бета-тестирования), но, возможно, setuptools 28 нет (текущая версия - 39). Итак, можно попробовать обновить setuptools? Как уже упоминалось, вам, возможно, придется вручную загрузить файл .whl со страницы PyPI и установить его.

abarnert 10.04.2018 22:43
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
16
1 844
3

Ответы 3

Я бы попробовал sudo chown -R your_user_name / Users / bdisha / Library / Caches / pip / http и chown -R your_user_name / Users / bdisha / Library / Caches / pip

Этот Почта может быть полезен

Это связано с недавним прекращением поддержки TLS для сайтов Python.org.

Этот ответ содержит подробности.

Подводя итог, обновите pip следующим образом:

curl https://bootstrap.pypa.io/get-pip.py | python

а затем запустите:

pip install pandas
pip install -U pip

После долгих поисков я попробовал это.

Другие вопросы по теме