Как я могу установить python пакетов навсегда, когда я запускаю свой код как оболочку python в nodeJS? - PullRequest
0 голосов
/ 17 июня 2020

Я пытаюсь установить такие модули, как cv2 и nmpy, нашел несколько решений, но при их использовании установка происходит каждый раз при использовании оболочки, что увеличивает время отклика.

Это функция из nodeJS Я использую для вызова функции python

`app.post("/img", (req, res) => {
    callNumber(req,res);
});
function callNumber(req,res){
    var spawn= require('child_process').spawn;
    var process = spawn('python',    
    ['./saved_model_exec.py',req.body.imgURL]);
    process.stdout.on('data',function(data){
    res.send(data.toString());
})
}`

Это файл python, который я пытаюсь запустить

`import tensorflow as tf
 import cv2
 import numpy as np
 import sys
 model = tf.keras.models.load_model('mnist.h5')
 img = cv2.imread('test.png', 0)
 img_resized = img.resize(28, 28)
 img_resized = np.array(img)
 img_reshaped = img_resized.reshape(1, 28, 28, 1)
 img_reshaped = img_reshaped/255.0
 res = model.predict([img_reshaped])[0]
 digit, accuracy = np.argmax(res), max(res)
 print(str(digit))`

1 Ответ

0 голосов
/ 17 июня 2020

Используйте pip install для установки пакетов python перед запуском кода nodejs. См. здесь о том, как установить pip, если у вас его еще нет в вашей системе.

Например, использование pip для установки numpy: pip install numpy

Если вы используете один и тот же экземпляр для python и nodejs:

  • Добавьте файл requirex.txt вместе с файлом python
  • Установите зависимости, используя Procfile перед запуском процесса nodejs
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...