我正在尝试在docker上安装nltk软件包,下面是我的docker文件
FROM python:3-onbuild
# COPY startup script into known file location in container
COPY start.sh /start.sh
RUN python -m libs.py
# EXPOSE port 8000 to allow communication to/from server
EXPOSE 8000
# CMD specifcies the command to execute to start the server running.
CMD ["/start.sh"]
# done!
libs.py 包含nltk软件包,在required.txt nltk == 3.2.5 已安装
import nltk
nltk.data.path('libs/')
nltk.download('wordnet')
nltk.download('pros_cons')
nltk.download('snowball_data')
nltk.download('averaged_perceptron_tagger')
nltk.download('averaged_perceptron_tagger_ru')
nltk.download('punkt')
nltk.download('universal_tagset')
nltk.download('maxent_treebank_pos_tagger')
nltk.download('hmm_treebank_pos_tagger')
nltk.download('reuters')
nltk.download('treebank')
nltk.download('vader_lexicon')
nltk.download('porter_test')
nltk.download('rslp')
但是它却给我了码头图片上的错误:
File "/usr/src/app/training/views.py", line 9, in <module>
from src import main_file as main
File "/usr/src/app/src/main_file.py", line 10, in <module>
from src import aspects_from_correct_data as asp
File "/usr/src/app/src/aspects_from_correct_data.py", line 4, in <module>
from nltk.tag import pos_tag
File "/usr/src/app/nltk.py", line 2, in <module>
nltk.download('wordnet')
AttributeError: module 'nltk' has no attribute 'download'
答案 0 :(得分:0)
我正在使用带有nltk==3.2.4
的Anaconda而我没有运行Docker。
当我注释掉第二行(libs.py
)时,nltk.data.path('libs/')
脚本适合我。每data
Module docs,nltk.data.path
是一个列表,而不是函数。