Mac OS X 10.7.5でPython 3.6で使用するためにNLTK 3.0をダウンロードしようとしていますが、SSLエラーが発生しています:
import nltk
nltk.download()
Pip3コマンドでNLTKをダウンロードしました:Sudo pip3 install -U nltk
。
NLTKダウンローダーのインデックスを変更すると、ダウンローダーはNLTKのすべてのファイルを表示できますが、すべてをダウンロードしようとすると、別のSSLエラーが発生します(写真の下部を参照)。
私はコンピューターサイエンスが比較的初心者であり、SSLに関してまったく知識がありません。
私の質問は、この問題を単純に解決する方法ですか?
同じ問題を抱えているユーザーによる同様の質問を次に示します。
他の質問の編集が拒否されたため、スクリーンショットを含む新しい質問を投稿することにしました。
役に立たなかった同様の質問:
次の端末コマンドを実行する場合、SSLチェックを無効にする必要はありません。
/Applications/Python 3.6/Install Certificates.command
3.6
の代わりに、Pythonのバージョンが以前のものである場合はそれを配置します。その後、Pythonインタープリターを開き(python3
コマンドを使用)、nltk.download()
を正常に実行できるはずです。
これは、urllib
がシステム証明書ストアにないOpenSSLの埋め込みバージョンを使用する問題です。 ここに答えがあります 何が起こっているかについての詳細情報。
@doctorBroctorによる回答を参照してください。より正確で安全に使用できます。他の何かに役立つかもしれないので、以下に答えを残してください。
https://stackoverflow.com/a/42890688/116789
これは、SSLチェックを無効にすることで機能します。
import nltk
import ssl
try:
_create_unverified_https_context = ssl._create_unverified_context
except AttributeError:
pass
else:
ssl._create_default_https_context = _create_unverified_https_context
nltk.download()
Finderで、Python 3.6
を検索します。アプリケーションフォルダの下に表示されます。 Python 3.6フォルダーを展開します。次に、"Install Certificates.command"を使用して証明書をインストールします。
コードスターのみでインストールする場合は、モジュールを手動でダウンロードしてnltk_dataフォルダーに保存し、valie ./nltk_dataを使用してラムダ変数環境NLTK_DATAを作成します。