无法在Docker中安装nltk
我想在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包,在requirements.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')
但它,但它给了我在docker图像上的错误:
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'
我用nltk==3.2.4
使用Anaconda,而且我没有运行Docker。
当我注释掉第二行( nltk.data.path('libs/')
)时,你的libs.py
脚本适用于我。 根据data
模块docs , nltk.data.path
是一个列表,而不是一个函数。