安装 nltk 支持包时出错:nltk.download()

Bon*_*son 7 python nltk python-3.x

我已经安装了 nltk 包。之后,我尝试使用 nltk.download() 下载支持包,但出现错误:

[错误 11001] 获取地址信息

我的机器/软件详细信息是:

操作系统:Windows 8.1 Python:3.3.4 NLTK 包:3.0

下面是在python中运行的命令:

Python 3.3.4 (v3.3.4:7ff62415e426, Feb 10 2014, 18:13:51) [MSC v.1600 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.

import nltk

nltk.download()
showing info http://nltk.github.com/nltk_data/
True

nltk.download("all")
[nltk_data] Error loading all: <urlopen error [Errno 11001]
[nltk_data]     getaddrinfo failed>
False
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

看起来它要去 http://nltk.github.com/nltk_data/而理想情况下它应该尝试从http://www.nltk.org/nltk_data/获取数据。

在另一台机器上,当我们在浏览器中输入http://nltk.github.com/nltk_data/时,它会重定向到http://www.nltk.org/nltk_data/。我不明白为什么我的笔记本电脑上没有发生重定向。

我觉得这可能是问题所在。

请帮忙。

我已经添加了命令提示符屏幕截图。需要帮忙..

在此处输入图片说明

问候,邦森

Swa*_*wal 7

试试下面的代码。它已按预期下载包

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 Code Online (Sandbox Code Playgroud)

看起来在链接被破坏之前被 ssl 修复了。

注意:- MAC已被使用


Bon*_*son 3

得到了解决方案。我的问题是,当 NLTK 下载器启动时,它的服务器索引为 - http://nltk.github.com/nltk_data/

这需要更改为 - http://nltk.org/nltk_data/

您可以通过进入 NLTK 下载程序窗口和文件 -> 更改服务器索引来更改此设置。

问候, 邦森

  • 你好,我通过更改服务器克服了 nltk 下载器的这个问题,但是我如何在代码中做到这一点?我收到 [nltk_data] 加载全部错误: &lt;urlopen error [Errno 11001] [nltk_data] getaddrinfo failed&gt; 运行代码时出错 (3认同)