Нет модуля с именем urllib3

Я написал сценарий для вызова API и успешно запустил его на прошлой неделе. На этой неделе он не запустится. Я получаю следующее сообщение об ошибке:

Traceback (most recent call last):
  File "user_audit.py", line 2, in <module>
    import requests
  File "c:\Python27\lib\site-packages\requests\__init__.py", line 60, in <module>
    from .packages.urllib3.exceptions import DependencyWarning
  File "c:\Python27\lib\site-packages\requests\packages\__init__.py", line 29, in <module>
    import urllib3
ImportError: No module named urllib3

Я подтвердил, что пакеты обновлены, попытался удалить и переустановить его, но пока ничего не помогло. Кто-нибудь может помочь?

ДОБАВЛЕНИЕ

Я установил urllib3, как было предложено @MSHossain, но затем получил другое сообщение об ошибке. Новое сообщение ссылалось на другой файл, который я написал, который создал скомпилированный файл Python. Другой файл использовал smptlib, чтобы попытаться отправить электронное письмо. Я не понимаю, как это могло произойти, но я удалил другой файл, и мой скрипт запустился без проблем. Я принял ответ ниже, поскольку мне удалось установить urllib3, но он уже должен был быть включен в модуль запросов.


person Jeremy Real    schedule 07.03.2017    source источник
comment
Фактический код, выполняющий вызов, был бы действительно полезен.   -  person Christian König    schedule 07.03.2017
comment
во-первых, убедитесь, что вы используете его с правильной версией Python?   -  person Shubham Namdeo    schedule 07.03.2017
comment
@ ChristianKönig Ошибка в строке 2, запросы на импорт. Другие ссылки на строку в сообщении об ошибке относятся к самому модулю запроса.   -  person Jeremy Real    schedule 07.03.2017


Ответы (6)


Либо urllib3 не импортирован, либо не установлен.

Для импорта используйте

import urllib3

вверху файла. Для установки напишите:

pip install urllib3

в терминал.

Возможно, вы неправильно активировали переменную среды. Чтобы активировать переменную среды, напишите

source env/bin/activate

в терминал. Здесь env - имя переменной окружения.

person Shakhawat Hossain    schedule 07.03.2017
comment
Хорошо, установка urllib3 устранила проблему. Очень странно, так как это тоже часть модуля запросов. - person Jeremy Real; 07.03.2017
comment
установите свою среду ... запись исходного кода env / bin / activate - person Shakhawat Hossain; 07.03.2017
comment
если ответ помог вам, вы не можете проголосовать за или принять ответ - person Shakhawat Hossain; 07.03.2017

pip install urllib3 

Причина, по которой он сломался, заключается в том, что я установил несовместимую версию urllib3 как временную зависимость awscli. Вы увидите такие конфликты при повторном запуске установки.

person crizCraig    schedule 26.06.2019

задайте среду, написав source env / bin / activate, если env не найден, сначала напишите virtualenv env, затем source env / bin / activate , затем установите флажок pip freeze, если urllib3 там не найден, затем переустановите urllib3, надеюсь, это поможет.

person Shakhawat Hossain    schedule 07.03.2017

Я решил это, запустив

pip install --upgrade requests
person DanielS    schedule 09.04.2021

Несколько минут назад я столкнулся с той же проблемой. И это потому, что я использовал виртуальную среду. Я считаю, что из-за каталога venv установленный пакет мог перестать работать.

К счастью, я загрузил программу установки в свой каталог. Я запустил настройку и выбрал вариант ремонта, и теперь все работает нормально.

person vamosrafa    schedule 25.06.2017

Для меня в PyCharm мне пришлось поместить import urllib3 в начало файла, как упоминалось ранее, после чего PyCharm предоставил возможность импорта. Даже после установки с pip

person JochemQuery    schedule 20.09.2017