问题描述:运行时出现[nltk_data] Error loading averaged_perceptron_tagger,Name or service not known问题,详见下图。
由于这个问题最近总是困扰开发和调试工作,因此将彻底的解决办法记录如下,如下设置好就不需要漫长的等待了,否则会影响运行调试效率。NLTK的下载配置和演示请参考之前一篇文章。
1.解决办法一
1)需要将nltk_data/taggers和nltk_data/tokenizers目录下的压缩包都解压。
2)在应用中手动将nltk_data目录加入到系统path中。见下面的程序,优点是直观,随用随加,缺点是增加了冗余程序,每个应用都要加。
程序代码如下:
# 用于配置nltk_data目录,否则需要联网下载相关内容,记得解压缩taggers目录下的压缩包
import nltk
nltk_path='D:\\dev\\Python310\\share\\nltk_data'
nltk.data.path.append(nltk_path)
sys.path.append(nltk_path)
2.解决方法二
第一步同办法一。第二步在windows环境系统的path变量加上nltk_data目录,linux环境下,在用户所在的.bashrc文件的path变量加上nltk_data目录。见下图。