Скрипт Python, выполняемый с использованием процесса ядра asp dot net.Start() не может найти модули

#python #c# #asp.net-core #pip #process

#python #c# #asp.net-core #pip #процесс

Вопрос:

Я создал веб-api, и он запускает скрипт python с использованием процесса c #.Start() . Скрипт работает без проблем на локальном хосте, но как только я развертываю и публикую его в IIS, я получаю эту ошибку из скрипта python.

 line 281, in apply_affine_transform    raise ImportError("Image transformations require SciPy. "ImportError: Image transformations require SciPy. Install SciPy.

 

Я проверил установленные модули, выполнив «pip list -v», и, конечно же, scipy уже установлен. Затем я выполнил скрипт через cmd, и он работал без проблем. Я понял, что это произойдет только в том случае, если скрипт python был выполнен через процесс c #.Start()

ПРИМЕЧАНИЕ: ошибка выдается в другом импортированном модуле, в частности, здесь :

 C:UsersComputer1AppDataLocalProgramsPythonPython38libsite-packageskeras_preprocessingimageaffine_transformations.py
 

Кто-нибудь может указать мне правильное направление?

РЕДАКТИРОВАТЬ: мне не удалось решить проблему, но я нашел обходной путь с участием anaconda (https://www.anaconda.com /), который должен был использовать Process.Start() для запуска скрипта через среду conda (base)

Комментарии:

1. Я предполагаю, что это, вероятно, связано с тем, что пользователь пула приложений IIS не имеет доступа к SciPy или чему-то еще

2. @CarlReid Я тоже подозреваю это, но я не знаком с процессом предоставления доступа к пулу приложений для scipy… Я установил его для запуска как «Локальная система» и предоставил ему полные разрешения для задействованных файлов, но все равно ничего не сделал… Странно то, что импорт для tensorflow не выдает ошибку, хотя команда, используемая для установки обоих модулей, была одинаковой => «pip install <package_name>»