リクエスト(SSLErrorが原因(「SSLモジュールが利用できないため、HTTPS URLに接続できません。」)PyCharmがウェブサイトをリクエストする際のエラー


89

Pycharmを介してPython3Windowsでリクエストを使用し、SSLモジュールが利用できないというエラーを受信する

私はこれを引き起こしている可能性があるものを理解しようと何時間も費やしました。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に少し慣れていないので、もうしばらくお待ちください。-


このslproweb.com/download/Win64OpenSSL-1_1_1c.exeをOpenSSLからインストールしました。私の問題を解決しました。
MatejNovosad19年

回答:


107

これがまだ解決されているかどうかはわかりませんが、Windows10のAnacondapython3.7.3とIdleで同様の問題が発生していました。次を追加して修正しました。

<path>\Anaconda3
<path>\Anaconda3\scripts
<path>\Anaconda3\Library\bin

PATH変数に。


複数のパスをエクスポートする必要がある理由はわかりませんが、私にとってはうまくいきます。ありがとうございます。
huichen19年

1
これは私のために働いた!「execstack ...」cmdではなく、これです!パス/ anaconda3 /ライブラリ/ binは私のために働いた追加
ERJAN

1
この3つのパスを追加する方法/場所がわからない場合は、
AlexDana20年

アレックスは- PATH環境変数にこれらの項目を追加します(例えば、以下のムケシュMethaniya /ニューロンの回答参照)
ポール・スティーブンス

これらのパスをどこに追加する必要がありますか?を使用して特定のフォルダーからPythonコードを実行しようとしていますpython get-pip.py
DannyHern20年

30

私はWindows10を使用していますが、Python 3.7.4でのAnacondaの新規インストールで問題が発生しました。githubのこの投稿で、問題が解決しました。

(ソース:https//github.com/conda/conda/issues/8273

私は引用します:

「私の回避策:次のファイルをコピーしました

libcrypto-1_1-x64.*
libssl-1_1-x64.*

D:\ Anaconda3 \ Library \ binからD:\ Anaconda3 \ DLLsへ。

そしてそれは魅力として機能します!「」


4
私にとってすべての同じバージョン。3.7.4を搭載したWindows10Miniconda。このソリューションで修正されました。
KevinVasko20年

14

Windowsユーザーは、以下のパスを設定する必要があります。

  • ..\Anaconda3
  • ..\Anaconda3\scripts
  • ..\Anaconda3\Library\bin

ユーザーあたり:

  1. オープン環境変数
  2. クリック User Variable
  3. すでに開いている場合はコマンドプロンプトを閉じて、再度開きます

システム全体(再起動が必要)

  1. オープン環境変数
  2. クリック System Variable
  3. Windowsを再起動します

12

次の推奨事項に従ってOpenSSLをインストールすることで解決しました:https//github.com/conda/conda/issues/8046#issuecomment-450515815

condaリポジトリ内の対応するチケット:https//github.com/conda/conda/issues/8046

更新:問題(PyCharm内)は2019.1バージョンで解決されるはずです(早期アクセスプレビュービルドはすでに利用可能ですhttps://www.jetbrains.com/pycharm/nextversion/)。


9

ここからバイナリをインストールしました:https//slproweb.com/products/Win32OpenSSL.html このサイトは公式のOpenSSLwikiに記載されています。それは私の問題を解決しました


1
そこにはたくさんのバイナリがありますが、どれが正確ですか?正確なリンクまたはスクリーンショットを作成するのはクールです。:友人ありがとう、私は、MSIファイルを使用して最初のリンクを使用し、それが働いたslproweb.com/download/Win64OpenSSL_Light-1_1_1b.msi
ステパンYakovenko


5

私はAnacondaを持っていないので、私が取った手順は次のとおりです。

  • brew uninstall python3
  • brew install python3
    • Your 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 --install
  • 実行されbrew install python3、正常に完了しました。

このスクリプトを使用して、機能するかどうかを確認しました

import requests
r = requests.get('https://www.office.com')
print(r)

スクリプトpython3およびpython3.7を実行し、出力は<Response [200]>SSLErrorの代わりでした。


5

私は2020年4月にそれに直面しました。これらは私が試したオプションであり、最後の解決策が私を通り抜けさせます。

問題:

Spyder IDEで使用すると、Requestsモジュールは正常に機能しますが、Windowsでスクリプトを実行しようとすると、SSLエラーで失敗します。HTTPリクエストでは正常に機能しますが、HTTPSリクエストではSSLエラーが発生しました。

  1. 私はVeify = True、False、そしてCertsにも飽きました。同じエラー
  2. Certifiを削除しました-condaremovecertifi-動作しませんでした 更新しました
  3. openssl、certifi-それでも同じエラー(参照:https//github.com/ContinuumIO/anaconda-issues/issues/494)追加
  4. パス変数-同じエラー
  5. Anacondaに新しい環境を作成しました-同じエラー

それを修正した解決策:

解決策:https//github.com/conda/conda/issues/8273

次のファイルをAnaconda3 \ Library \ binから\ Anaconda3 \ DLLにコピーしました

libcrypto-1_1-x64。* libssl-1_1-x64。*


これは私にとってもうまくいきました!すべてのデバッグ手順を実行していただきありがとうございます:)
Lou

2

CondaとPython2.7.2を使用しているWindows10でも同様の問題が発生しました

多くの解決策を試した後、この応答に出くわしました。これは、そのビルドのopensslに問題があることを示唆しています。

Pythonを3.7.1(ビルドh33f27b4_4)にダウングレードすると、すべてが正常に機能しました。


1

Anacondaプロンプトを使用する場合、環境へのパスを追加する必要はありません

ディレクトリへのAnacondaプロンプトの変更を開始し、スクリプトを実行するか、そこからエディターを起動します。これにより、完全なAnaconda環境になり、SSLエラーが停止します。

コマンドプロンプトとAnacondaプロンプトの違いは何ですか?コマンドプロンプトとanacondaプロンプトの違いについては、 このSOの回答を参照してください。


1

AnacondaのドキュメントやGithubの発行チケットなどを数時間かけて調べた後、ようやくWindows 10 64ビット(Anaconda 3.7)で動作させることができました。私のために働いたのは、https: //slproweb.com/download/Win64OpenSSL-1_1_1d.exeからWin64 OpenSSLv1.1.1dバイナリファイルをインストールすることでした。

:バージョンは重要なようです!(他のコメントや回答で示唆されているように)1.1.0Lを試しましたが、このバージョンでは問題が解決しませんでした。一部のOpenSSLライブラリをインストールした後も問題が発生する場合は、適切なバージョンが見つかるまで試してください。Windows10上のAnaconda3.7の場合、正しいのは1.1.1dのようです。ライトバージョンは試していません。

物事動作しませんでした私のために:


1

アナコンダの新規インストール後にpipインストールを実行しているときに、同じSSLエラーが発生しました。助けになったのは、pipインストールを実行する前に基本環境をアクティブ化することでした。activate basefrom cmdを実行してから、Pythonスクリプトを実行します。'conda run -n base python script.py'リファレンスを試すこともできます-https://github.com/conda/conda/issues/8487


1

Windows10のインストールでも同じことが起こりました。

Anaconda3はlibcrypto-1_1-x64.dll and libssl-1_1-x64.dll、からコピーする前にAnacondaNavigatorを開きませんでした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、それはうまくいきました。


1

Windows 10で同じ問題に対処した後、解決策はかなり簡単です。

  1. Anacondaプロンプトを開く
  2. 実行 conda init
  3. コードを実行するオープンPythonインタープリター(PyCharm、Anaconda Prompt、cmdなど)を閉じて再度開きます

コードを再度実行すると、機能するはずです。私はアナコンダとPyCharmの両方をアップグレードし、私のRANまでのバージョンのすべての組み合わせの問題を持っていたconda initくらいからの回答のようなあなたのPATHに追加し、ポール・スティーブンス。#3をスキップしないでください—PyCharmまたは他のインタプリタを再起動することが重要です。


0

Webサイトにアクセス:開発者ツールから次の情報を取得し、ヘッダーを確認します。(右クリック->検査します。次にネットワークタブを開き、ヘッダーを確認します)

  • リクエストURL:http//www.msft.com/
  • リクエスト方法:GET
  • ステータスコード:200OK
  • リモートアドレス:205.178.189.130:80
  • リファラーポリシー:ダウングレード時のリファラーなし

したがって、HTTPSではなくHTTPへのリクエストを実行する必要があることがわかります。

import requests


def Earlybird():
    url = 'http://msft.com/'
    response = requests.get(url)
    print(response.text)

if __name__ == '__main__':
    Earlybird()

0

注:この問題はWindows10で修正されました。Windows10の仮想環境で同じ問題が発生していました。管理者としてCMDを実行し、新しい仮想環境を作成することで問題が解決しました。

  • 管理者としてcmdを実行します
  • 仮想環境の作成(virtualenv .venv)
  • 仮想環境をアクティブ化する.venv \ Scripts \ activate
  • Pipインストールリクエスト

0

私のウィンドウズ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"

0

私はVSCodeを使用して編集とデバッグを行っていますが、私のために機能した唯一の解決策は、Windowsで環境変数を編集することでした。どうやらこれは問題を引き起こしますが、それらが何であるかはわかりません。

Anacondaプロンプトから実行することは(saythによって提案されたように)私にとってオプションではありませんでした。または、おそらく、anacondaプロンプトを実行し、anacondaプロンプトからVSCodeを起動することを提案しました。合理的な要求のようには聞こえません。

これは、誰にとっても有効な決定的なグローバルな答えがない、長期にわたる慢性的な問題のようです。



0

このエラーは、Python 3.7.3を使用するVSCodeで発生しますが、Python3.7.0を使用するWindows10のIDLEエディターでは正常に機能します。


0

conda環境オプションを選択してプロジェクトを作成してください。

プロジェクトを再作成し、「使用する新しい環境」オプションから「conda」を選択することで問題が解決しました

画像を参照してください:

新しい環境設定


0

Windows 10の場合-これは回避策であり、根本的な問題は修正されませんが、何かをインストールして先に進む必要がある場合は、コマンドプロンプト、powershell、またはdockerfileで次を実行します。

pip config set global.trusted_host "pypi.org files.pythonhosted.org"


0

チームメイトのマシンでも同じ問題に直面していました。anacondaパスを追加して同じことを修正しました。以下の私のシステムには、アナコンダのパスがあります。

C:\ProgramData\Anaconda3\Scripts
C:\ProgramData\Anaconda3\
C:\ProgramData\Anaconda3\Library\bin

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.