You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用nltk.word_tokenize报错,nltk.download('punkt')返回false求助

解决NLTK punkt资源下载失败的问题

问题场景

运行以下代码时触发资源缺失错误:

df['num_words'] = df['text'].apply(lambda x:len(nltk.word_tokenize(x)))

错误信息:

Resource punkt not found.
Please use the NLTK Downloader to obtain the resource:
   
>>> import nltk
>>> nltk.download('punkt')
  
For more information see: https://www.nltk.org/data.html

Attempted to load tokenizers/punkt/english.pickle

尝试nltk.download('punkt')返回False,试过以下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()

解决方案

1. 手动安装punkt资源

  1. 获取punkt资源包:找到NLTK官方提供的punkt资源压缩包(包含tokenizers/punkt目录下的相关文件)
  2. 查看本地NLTK数据存储路径:运行以下代码获取可用路径
    import nltk
    print(nltk.data.path)
    
  3. 在上述路径中的任意一个目录下,创建tokenizers/punkt文件夹,将下载的资源包解压到该文件夹内,确保english.pickle等核心文件存在。

2. 指定下载路径并检查权限

  • 若默认路径无写入权限,手动指定有权限的自定义路径下载:
    nltk.download('punkt', download_dir='/your/custom/writable/path')
    
  • Linux/macOS用户可尝试用sudo提升权限运行下载命令;Windows用户以管理员身份打开终端执行下载操作。

3. 更换资源下载源

使用国内镜像源加速资源获取(需配置NLTK适配对应镜像),或直接从镜像站点下载资源包后手动安装。

内容的提问来源于stack exchange,提问作者Aryan Shriva

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 20:10:31