Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

NLTK download SSL: Certificate verify failed

I get the following error when trying to install Punkt for nltk:

nltk.download('punkt')      [nltk_data] Error loading Punkt: <urlopen error [SSL:  [nltk_data]     CERTIFICATE_VERIFY_FAILED] certificate verify failed  [nltk_data]     (_ssl.c:590)> False 
like image 291
user3429986 Avatar asked Aug 12 '16 11:08

user3429986


People also ask

What is NLTK download (' Punkt ')?

punkt is the required package for tokenization. Hence you may download it using nltk download manager or download it programmatically using nltk. download('punkt') .

How do I import Punkt into Python?

To pre-install the punkt package with a single command line python -c 'import nltk; nltk. download("punkt")' .


2 Answers

TLDR: Here is a better solution: https://github.com/gunthercox/ChatterBot/issues/930#issuecomment-322111087

Note that when you run nltk.download(), a window will pop up and let you select which packages to download (Download is not automatically started right away).

To complement the accepted answer, the following is a complete list of directories that will be searched on Mac (not limited to the one mentioned in the accepted answer): - '/Users/YOUR_USERNAME/nltk_data' - '/usr/share/nltk_data' - '/usr/local/share/nltk_data' - '/usr/lib/nltk_data' - '/usr/local/lib/nltk_data' - '/Users/YOUR_USERNAME/YOUR_VIRTUAL_ENV_DIRECTORY/nltk_data' - '/Users/YOUR_USERNAME/YOUR_VIRTUAL_ENV_DIRECTORY/share/nltk_data' - '/Users/YOUR_USERNAME/YOUR_VIRTUAL_ENV_DIRECTORY/lib/nltk_data'

In case the link above dies, here is the solution pasted in its entirety:

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() 

Run the above code in your favourite Python IDE or via the command line.

like image 150
fstang Avatar answered Sep 25 '22 11:09

fstang


This works by disabling SSL check!

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() 
like image 26
ishwardgret Avatar answered Sep 22 '22 11:09

ishwardgret