如何将NLTK语料库添加到Google云功能?

时间:2019-06-13 18:24:25

标签: python-3.x google-cloud-platform google-cloud-functions google-cloud-storage nltk

我正在尝试运行涉及使用NLTK的Google云功能。我添加了 textblob == 0.15.3 nltk == 3.4.3 到require.txt。但是每次我运行该脚本时,它都会崩溃,并且日志显示“请使用NLTK下载器获取资源:”。

我知道我们需要下载NLTK语料库才能在本地系统中运行脚本。但不确定如何在Google Cloud Functions中下载它。任何帮助将不胜感激。预先感谢。

2 个答案:

答案 0 :(得分:0)

有两种方法可以指定使用Python编写的Cloud Functions的依赖关系:使用pip包管理器的requirements.txt文件或将本地依赖关系与您的函数一起打包。 There您可以找到说明。 另外,请检查this链接以获取可能的解决方案。

答案 1 :(得分:0)

这是我通过Travis管道获取nltk_data的方式:

    # To install the core NLTK package
    pip install nltk   

    # Installs only the extra packages you need. You could also use 'all' instead. 
    python -m nltk.downloader punkt averaged_perceptron_tagger wordnet    

然后,您可以将文件夹复制到功能文件夹中,并将其压缩:

    mkdir -p function/nltk_data/
    cp -a ~/nltk_data/. function/nltk_data/
    cp -a path/to/your/code/. function/

确保设置NLTK_DATA环境变量。因为我的文件夹结构是

    - nltk_data/
    - main.py
    - requirements.txt

我只需要设置NLTK_DATA = nltk_data,然后python可以找到文件。

希望这会有所帮助!