[nltk_data] Error loading reuters: urlopen error [Errno 11004] [nltk_data] getaddrinfo failed
在学习NLP项目时,经常会用到nltk工具包,但经常在import后使用的时候出现报错的情况
我们可以看到在错误提示里有让我们去download(‘reuters’)
但是按照提示的方法去下载时会报如下错误
import nltk
nltk.download('reuters')
出现这样的问题时要怎么解决?很多人都走错了思路导致浪费了不少时间在这上面。
主要的原因是无法解析raw.githubusercontent.com这个域名,这时我们可以使用代理的方式去连接到这个地址,或者修改host文件的域名地址映射,或者手动下载后解压到指定目录,详情如下:
解决办法
1.设置系统代理
把nltk.download()替换为:
nltk.set_proxy('SYSTEM PROXY')
nltk.download()
2.修改host文件
在 C:\Windows\System32\drivers\etc 路径下找到hosts文件,并在最后添加 199.232.68.133 raw.githubusercontent.com IP地址,并保存(注意:使用管理员打开)。这时再打开NLTK下载器,便可以正常打开。如图:
这里199.232.68.133 raw.githubusercontent.com中,前面的IP地址可能会发生更换,可以使用域名查看器(如:https://www.ipaddress.com/)查询raw.githubusercontent.com的IP地址后再修改hosts文件。
得到 199.232.68.133 的IP地址,这时修改按上一步修改hosts文件就可以了
可能存在部分朋友按照方法1仍不可行(没有任何反应,此时也不报错了,但是就是不下载)的情况,那么请看方法2吧
3.手动下载后解压到指定目录
可以点击下面两个链接,手动下载nltk_data包
注意:nltk_data:github国内访问比较慢,如果访问失败的话可以使用第二个gitcode的链接(国内更快一些)
nltk_data:github
nltk_data:gitcode
操作步骤
- 下载
- 解压
- 在提示搜索的目录里创建nltk_data文件夹
Searched in:
- 'C:\\User\\Administrator/nltk_data'
- 'D:\\ProgramData\\Anaconda3\\nltk_data'
- 'D:\\ProgramData\\Anaconda3\\Lib\\nltk_data'
- .....
路径很多,随意选择一个即可
- 将解压后的packages下的所有文件copy到刚才新建的nltk_data文件夹下
5.重启jupyter notebook即可(如果使用的是jupyter notebook工具:一般需要关闭jupyter notebook重新打开才生效)
引用参考:
[1]: https://mp.weixin.qq.com/s?__biz=MzI1NzczMDIwNw==&mid=2247483777&idx=1&sn=cd985f3f7fe0472df9560de94753d86d&chksm=ea13b271dd643b67a591485d249ca9f64aaa380db3ff16c462c0d2def5ccce114e3c938b955e&token=445308227&lang=zh_CN#rd
[2]: https://blog.csdn.net/zeroheitao/article/details/122496837