如何在谷歌云应用引擎中下载所有nltk数据?

时间:2017-05-25 18:11:05

标签: python django google-app-engine google-cloud-platform nltk

我有一个django应用程序,我使用下面的链接部署了

  

https://cloud.google.com/python/django/flexible-environment

但是当我使用nltk进行文本处理时,我遇到了错误。

*********************************************************************
  Resource 'taggers/maxent_treebank_pos_tagger/PY3/english.pickle'
  not found.  Please use the NLTK Downloader to obtain the
  resource:  >>> nltk.download()
  Searched in:
    - '/root/nltk_data'
    - '/usr/share/nltk_data'
    - '/usr/local/share/nltk_data'
    - '/usr/lib/nltk_data'
    - '/usr/local/lib/nltk_data'
    - ''

所以我知道我缺少来自nltk的数据。我在网上看了很多代码,但没有办法在谷歌应用引擎中下载数据。以下是我的requirements.txt供您参考。

Django==1.10.6
gunicorn==19.7.0
nltk==3.0.5

如果有办法,请告诉我。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

我为获取nltk数据做了一个解决方法。 首先,我将所需的nltk数据文件复制到我的Django应用程序文件夹中。 在settings.py中,要访问该文件夹,我创建一个变量。

nltk_dir = os.path.join(BASE_DIR,'first_app','nltk_data')

然后引用这个目录变量我在哪里使用nltk.data.path.append() 所以它基本上附加到nltk中的data.py中的路径列表。

url = settings.nltk_dir
nltk.data.path.append(url)

因此,我能够检索nltk数据。:)