如何在我的 elastic-beanstalk 中设置 python3、numpy、nltk?

如何在我的 elastic-beanstalk 中设置 python3、numpy、nltk?

我已经在 elastic-beanstack 中部署了我的项目,我需要为其设置 python3、numpy 和 nltk 环境。

我们有一个包含 python3、numpy 和 nltk 的 python 代码,我们正在使用nodejs 子进程。在我的本地机器上它运行良好。

为了在 EB 上进行设置,我们在项目中启动了 EB cli,并通过 EB CLI 安装了 python3、numpy、nltk

sudo yum -y update
sudo yum -y install yum-utils
sudo yum -y groupinstall development
sudo yum install pip3

pip3 --version 
--------> pip 19.0.2 from /usr/local/lib/python3.6/site-packages/pip (python 3.6)

sudo yum -y install python36u
sudo update-alternatives --config python

python
--------> Python 3.6.7

pip3 install nltk --user
pip3 install numpy --user

pip list

-->Package        Version
nltk           3.4    
numpy          1.16.1 
pi             0.1.2  
pip            19.0.2 
setuptools     36.2.7 
singledispatch 3.4.0.3
six            1.12.0 
wheel          0.33.0 

执行输出时,我们收到错误,因为未找到 nltk 和 numpy 包。

如何在我的 elastic-beanstalk 中设置 python3、numpy、nltk,请帮助我。

我是不是错过了什么,或者我完全走错了路。

我在做什么

在我的 Python 脚本中

import sys, json
from nltk import RegexpTokenizer
import pickle
import numpy as np

np.dot(v1, v2)

使用 Python 在我的 Express(Nodejs) 中

const { spawn } = require('child_process');
const ls = spawn('python', ['./scoring.py', JSON.stringify(qJSON)]);
ls.stdout.on('data', (data) => {

错误 stderr:回溯(最近一次调用最后一次):stderr:文件

“./scoring.py”,第 7 行 stderr:来自 nltk 导入 RegexpTokenizer

stderr:ImportErrorstderr::stderr:没有名为 nltkstderr 的模块:

子进程退出,代码为 1

使用 Python3 在我的 Express(Nodejs) 中

const { spawn } = require('child_process');
const ls = spawn('python3', ['./scoring.py', JSON.stringify(qJSON)]);
ls.stdout.on('data', (data) => {

错误:在 Process.ChildProcess._handle.onexit 处产生 python3 ENOENT

(internal/child_process.js:232:19)于 onErrorNT

(内部/child_process.js:407:16)位于 process._tickCallback

(internal/process/next_tick.js:63:19)在以下位置发出“错误”事件:在

Process.ChildProcess._handle.onexit(内部/child_process.js:238:12)

在 onErrorNT (internal/child_process.js:407:16)

process._tickCallback (内部/process/next_tick.js:63:19)

在此处输入图片描述

答案1

nltk和包numpy不附带任何可执行脚本。

要验证安装是否成功,请尝试加载 Python 中的库:

$ python
Python 3.6.8 (default, Feb  6 2019, 12:07:20) 
[GCC 6.3.0 20170516] on linux
Type "help", "copyright", "credits" or "license" for more information.

>>> import nltk
>>> import numpy
>>> 

如果这两个import语句没有引发任何错误,则表示包安装成功,您可以在程序中使用这些模块。

希望有帮助:)

相关内容