2016-08-02 53 views
6
import nltk 
nltk.download() 

nicht herunterladen Es zeigt [SSL:CERTIFICATE_VERIFY_FAILED]. Im Fall von requests kann man verify=False verwenden, aber was ist hier zu tun.Kann nltk Daten

UPDATE:

Dieser Fehler weiterhin auf Python 3.6, mit NLTK 3.0 auf Mac OS X 10.7.5:

enter image description here

den Index im NLTK Downloader ändern (vorgeschlagen here) erlaubt der Downloader, um alle NLTK-Dateien anzuzeigen, aber wenn man versucht, alle herunterzuladen, bekommt man einen weiteren SSL-Fehler (siehe Foto unten):

enter image description here

+0

Sind Sie sicher, dass Sie die aktuellste Version von nltk verwenden und vielleicht nltk.download versuchen (‚alle‘) – SAMO

+2

nein, es –

+0

arbeiten knapp http://stackoverflow.com/a/37053858/1168680 – RAVI

Antwort

0

OK, es ist ein bisschen ein Hack, aber hier ist, was ich tun musste, um die verschiedenen NLTK-Dateien in Python 3.x auf meinem Mac-Laptop (mit macOS 10.12.2) verwenden zu können.

Erstens, der Zertifikatsfehler tritt nur auf, wenn ich versuche, NLTK-Daten mit Python 3.x auf meinem Mac herunterzuladen (meine Ubuntu-VM in VirtualBox hatte keinen solchen Fehler bei Python 3.x - was ärgerlich ist) . Warum dies einen Fehler auf meinem Mac verursacht, ist mir ein Rätsel, zumal das NLTK-Modul ohne Probleme in Python 3.x mit pip installiert wird. Es ist die Verbindung zum Download-Server von NLTK, die das SSL-Verifizierungsproblem verursacht.

Mein 'ah ha!' Der Moment kam, als ich erkannte, dass NLTK - wenn es in Python 3.x oder Python 2.x installiert wurde - die gleiche Verzeichnisstruktur unter allen Python-Versionen hat, die auf jedem Computer installiert sind. Also habe ich Python 2.x verwendet, das auf macOS vorinstalliert ist, um NLTK zu installieren, und dann nltk.download() in Python 2.x verwendet, um den Stoppwordkorpus ohne Probleme zu installieren. Nachdem dies erledigt ist (in Python 2.x), ich ging dann zurück in Python 3.x und dieser Code gearbeitet:

import nltk 
from nltk.corpus import stopwords 
print(stopwords.words('english')) 

Wie gesagt, es ist ein bisschen wie ein Hack, aber diese Technik läßt mich bekommen Die NLTK-Daten werden mit Python 2.x installiert, die ich mit Python 3.x nach Bedarf bearbeiten kann.

0

(Hinzufügen "Zertifikat fehlgeschlagen _ssl.c überprüfen: 749". Für SEO dieser Ausgabe)

für mich gelöst auf dem Mac, 10.12.2 von Paul Barry Tipp des Herunterladens über Python 2.7 (ich kann‘ t Kommentar, weil rep < 50)

Zusätzliche Probleme und behoben: zu können NLTK zum Download über Python 2.7 (Standard-Mac Python 2.7-Setup) ich hatte auch die Python-Ordner in den /.bash_profile hinzufügen wie this comment zeigt.

Dann, da ich diese Pfadvariable für 2,7 festgelegt hatte, musste ich es entfernen, sobald die Korpora heruntergeladen wurden, um Python3 starten zu können. Entfernen Sie es aus /.bash_profile, bevor Sie python3 starten.

Nach all dem kann ich "Import Nltk" und "aus Nltk.book Import *" ohne Probleme ausführen.

7

Ich hatte das gleiche Problem beim Versuch, sowohl Nltk und SpaCy zu konfigurieren. Nach den Anweisungen in this question konnte ich das Problem überwinden. Versuchen Sie /Applications/Python\ 3.6/Install\ Certificates.command läuft, dann wiederholen Sie Ihre NLTK herunterladen

1

Auf MacOS 10.12.6 dies durch Eingabe der folgenden in der Bash-Terminal gelöst wurde

pip install certifi 
/Applications/Python\ 3.6/Install\ Certificates.command 

die übliche Methode der Installation nltk Corpora dann für mich gearbeitet

import nltk 
nltk.download()