Использование запросов в Python3 Windows через Pycharm и получение ошибки SSL Module Not Available
Я часами пытался понять, что могло быть причиной этого. Я переустановил Anaconda, и я полностью застрял. При запуске следующих
def Earlybird(daycount):
url = 'https://msft.com'
response = requests.get(url)
print(response)
Earlybird()
Я получаю ошибку
requests.exceptions.SSLError: HTTPSConnectionPool(host='msft.com',
port=443): Max retries exceeded with url: / (Caused by SSLError("Can't
connect to HTTPS URL because the SSL module is not available."))
Понятия не имею, что могло быть причиной этого. Поскольку Anaconda установлена недавно, я предполагаю, что все будет в актуальном состоянии, поэтому я не уверен, указывает ли это на неправильный SSL? Я немного новичок в python, поэтому благодарим за терпение. -






переход на веб-сайт: дает мне следующую информацию из инструмента разработчика и просматривает заголовки. (щелкните правой кнопкой мыши -> проверить. затем откройте вкладку сети и проверьте заголовки)
Итак, мы видим, что нам нужно выполнить запрос по HTTP, а не по HTTPS.
import requests
def Earlybird():
url = 'http://msft.com/'
response = requests.get(url)
print(response.text)
if __name__ == '__main__':
Earlybird()
Я решил это, установив OpenSSL по следующей рекомендации: https://github.com/conda/conda/issues/8046#issuecomment-450515815
Соответствующий билет в репозитории conda: https://github.com/conda/conda/issues/8046
Обновлять: проблема (в PyCharm) должна быть решена в версии 2019.1 (уже доступна сборка Early Access Preview https://www.jetbrains.com/pycharm/nextversion/).
У меня была аналогичная проблема в Windows 10 с использованием Conda и Python 2.7.2.
Попробовав много-много решений, я наткнулся на этот ответ, который предполагал, что в этой сборке есть проблема с openssl.
Как только я понизил версию python до версии 3.7.1 (сборка h33f27b4_4), все заработало нормально.
Не знаю, решена ли эта проблема, но у меня возникали аналогичные проблемы с Anaconda python 3.7.3 и Idle в Windows 10. Исправил, добавив:
<path>\Anaconda3
<path>\Anaconda3\scripts
<path>\Anaconda3\Library\bin
в переменную PATH.
Хотя не знаю, почему мы должны экспортировать несколько путей, но у меня это работает, спасибо.
ЭТО Сработало для меня! не "execstack ..." cmd, а вот этот! добавление пути / anaconda3 / library / bin сработало для меня
Не уверен, что понимаешь, как / где мы должны добавить эти 3 пути?
Alex - добавьте эти элементы в переменную среды PATH (например, см. Ответ Мукеша Метания / Neuron ниже)
Куда мне добавить эти пути? Я пытаюсь запустить код Python из определенной папки с помощью python get-pip.py
Работал на Anaconda Python 3.8.3 на сервере Windows 10. Просто пришлось изменить локальную переменную окружения path.
Это решение намного лучше, чем установка ssl_verify: false, как предлагается в других сообщениях (например, stackoverflow.com/questions/42563757/…). Судя по всему, у этого решения есть проблемы с безопасностью.
Похоже, что мои пользовательские переменные допускают только один ПУТЬ, он продолжает заменять мой старый ПУТЬ, поэтому я не могу получить все 3. Может ли кто-нибудь мне помочь?
Я установил двоичные файлы отсюда: https://slproweb.com/products/Win32OpenSSL.html Этот сайт упоминается в официальной вики OpenSSL. Это решило мою проблему
там много бинарников, какой именно? Было бы здорово сделать точную ссылку или скриншот. Я использовал первую ссылку с файлом MSI, и она сработала, спасибо другу: slproweb.com/download/Win64OpenSSL_Light-1_1_1b.msi
Пользователям Windows необходимо указать следующие пути:
..\Anaconda3..\Anaconda3\scripts..\Anaconda3\Library\binНа пользователя:
Общесистемный (требуется перезагрузка) :
Работает на меня. Спасибо.
Где вы прокладываете путь? Добавить «новый», а затем указать путь для каждой из папок Anaconda3?
Нет необходимости добавлять пути к окружению, если вы используете Анаконда Подсказка.
Запустите изменение приглашения Anaconda в свой каталог и запустите свой сценарий или запустите редактор оттуда. Это гарантирует, что вы находитесь в полной среде Anaconda, и ошибка SSL прекратится.
В чем разница между командной строкой и Anaconda Prompt? См. Этот SO-ответ на в чем разница между командной строкой и подсказкой анаконды.
Примечание: Эта проблема была исправлена в Windows 10. У меня возникла такая же проблема с виртуальной средой в Windows 10. Проблема была решена запуском CMD от имени администратора и созданием новой виртуальной среды.
Решено, выполнив следующие действия в моих окнах 10:
mklink "C:\Users\hal\AppData\Local\Continuum\anaconda3\DLLs\libssl-1_1-x64.dll" "C:\Users\hal\AppData\Local\Continuum\anaconda3\Library\bin\libssl-1_1-x64.dll"
mklink "C:\ProgramData\Anaconda3\DLLs\libcrypto-1_1-x64.dll" "C:\ProgramData\Anaconda3\Library\bin\libcrypto-1_1-x64.dll"
Я использую VSCode для редактирования и отладки, и единственное решение, которое сработало для меня, - это редактировать переменные среды в Windows. Очевидно, это вызывает проблемы, но я не уверен, что они собой представляют.
Запуск из командной строки Anaconda (как было предложено сайтом) НЕ был для меня вариантом. Или, возможно, предлагалось запустить приглашение анаконды, а из приглашения анаконды каким-то образом запустить VSCode. Не похоже на разумную просьбу.
Похоже, что это давняя хроническая проблема без окончательного глобального ответа, подходящего для всех.
Не уверен, что означает «неразумный запрос», но на самом деле это хорошая практика для избежания странных ошибок, и она также решает эту ошибку. Это несложно, просто введите code в командной строке для запуска VS Code.
Переустановка python на основе приведенных здесь инструкций решила для меня эту проблему: Как я могу установить предыдущую версию Python 3 в macOS с помощью homebrew?
У меня нет Anaconda, поэтому я предпринял следующие шаги:
brew uninstall python3brew install python3Your Xcode (10.2) is too outdated. Please update to Xcode 11.3 (or delete it). Xcode can be updated from the App Store. ** Итак, я удалил Xcode, так как никакое обновление не показывалось, а затем переустановил его.xcode-select --install после. Если вы этого не сделаете .. вы получите сообщение об ошибке: The following formula python cannot be installed as binary package and must be built from source. Install the Command Line Tools: xcode-select --installbrew install python3, и он успешно завершился.Использовал этот скрипт, чтобы посмотреть, работает ли он
import requests
r = requests.get('https://www.office.com')
print(r)
Запустил скрипт python3 и python3.7, и на выходе получился <Response [200]> вместо SSLError.
Потратив несколько часов на изучение документации Anaconda, вопросов о выпуске Github и т. д., Мне, наконец, удалось заставить его работать в 64-разрядной версии Windows 10 (Anaconda 3.7). У меня это сработало, так это установка двоичного файла Win64 OpenSSL v1.1.1d из https://slproweb.com/download/Win64OpenSSL-1_1_1d.exe.
ПРИМЕЧАНИЕ: Версия имеет значение! Я пробовал 1.1.0L (как предлагалось в других комментариях и ответах), но с этой версией проблема не исчезла. Если у вас по-прежнему возникают проблемы после установки некоторых библиотек OpenSSL, продолжайте попытки, пока не найдете нужную версию. Для Anaconda 3.7 в Windows 10 кажется, что правильным является версия 1.1.1d. Лёгкую версию не пробовал.
То, что не работает для меня:
ssl_verify на Falselibcrypto и libssl в другое место (см. https://github.com/conda/conda/issues/8273#issue-409800067)Я использую Windows 10, у меня возникла проблема с новой новой установкой Anaconda на python 3.7.4, этот пост на github решил мою проблему:
(источник: https://github.com/conda/conda/issues/8273)
Цитирую:
" Мое решение: Я скопировал следующие файлы
libcrypto-1_1-x64.*
libssl-1_1-x64.*
из D: \ Anaconda3 \ Library \ bin в D: \ Anaconda3 \ DLLs.
И это работает как шарм! "
Для меня одинаковые версии всего. Windows 10 Miniconda с версией 3.7.4. Исправлено этим решением.
Столкнулся с этим 04/2020. Это варианты, которые я пробовал, и последнее решение помогло мне.
Проблема:
Модуль запросов работает нормально, когда я использую Spyder IDE, но когда я пытаюсь выполнить скрипт в Windows, он терпит неудачу с ошибкой SSL. Он отлично работает для HTTP-запросов, но для HTTPS-запросов я получил ошибку SSL.
Решение, которое исправило это:
Решение от: https://github.com/conda/conda/issues/8273
Я скопировал следующие файлы из Anaconda3 \ Library \ bin в \ Anaconda3 \ DLL
libcrypto-1_1-x64. * libssl-1_1-x64. *
У меня это тоже сработало! Спасибо, что прошли все этапы отладки :)
эта проблема сводила меня с ума, пока я не нашел этот пост, в котором говорилось, что нужно делать
brew upgrade python3
(без использования pycharm, с использованием возвышенного)
Обнаружена та же ошибка SSL при установке pip после новой установки anaconda. Что помогло, так это активация базовой среды перед установкой pip.
Сделайте activate base из cmd, а затем запустите свой скрипт python. Вы также можете попробовать 'conda run -n base python script.py' Reference - https://github.com/conda/conda/issues/8487
У меня было то же самое при установке Windows 10.
Anaconda3 не открывал Anaconda Navigator до того, как я скопировал libcrypto-1_1-x64.dll and libssl-1_1-x64.dll из Anaconda3\Library\bin to \Anaconda3\DLL.
Как только я установил pip в базовой среде, она работала нормально, но не в другой среде, которую я создал. Мне пришлось сделать то же самое, что и выше, в новой среде.
То есть скопируйте libcrypto-1_1-x64.dll and libssl-1_1-x64.dll с \<env folder>\Library\bin на \<env folder>\DLL, тогда все заработало.
После решения той же проблемы в Windows 10 решение довольно простое:
conda initЗапустите свой код еще раз, и он должен работать. Я обновил и Anaconda, и PyCharm, и у меня была проблема со всеми комбинациями версий, пока я не запустил conda init, который добавляет в ваш PATH, как и ответ от Пол Стивенс. Не пропускайте №3 - перезапуск PyCharm или любого другого интерпретатора является ключевым.
Большое вам спасибо за это! VSCode только что завершил ежемесячное автоматическое обновление на моей машине, и внезапно появилась эта проблема, и ваше решение сработало отлично :)
Эта ошибка возникает в VSCode с Python 3.7.3, но отлично работает в редакторе IDLE в Windows 10 с Python 3.7.0.
Я использую этот "Win64 OpenSSL v1.1.1h" -> EXE от https://slproweb.com/products/Win32OpenSSL.html
я установил и работает
Убедитесь, что вы создаете проект с выбранной опцией среды conda.
Моя проблема решена путем воссоздания проекта и выбора «conda» в параметрах «Новая среда с использованием».
см. изображение:

Просто нужно было Add Interpreter затем выбрать existing environnement, и это помогло. Не нужно воссоздавать проект.
В Windows 10 - это обходной путь, который, однако, не решает основную проблему, если вам просто нужно что-то установить и двигаться дальше; Выполните следующее в командной строке, PowerShell или dockerfile:
pip config set global.trusted_host "pypi.org files.pythonhosted.org"
Я также столкнулся с той же проблемой на машинах моих товарищей по команде. Исправлено то же самое с добавлением пути анаконды. В моей системе ниже указан путь Анаконды:
C:\ProgramData\Anaconda3\Scripts
C:\ProgramData\Anaconda3\
C:\ProgramData\Anaconda3\Library\bin
Убедитесь, что команда запускается из виртуальной среды; это была моя ошибка.
У меня была такая же проблема в VS Code.
Решением было запустить VS Code с помощью Anaconda Prompt.
То есть запустите Anaconda Prompt, активируйте виртуальную среду, если вы ее используете, а затем введите code [working directory].
Установил этот slproweb.com/download/Win64OpenSSL-1_1_1c.exe из OpenSSL. Решил мою проблему.