Сценарий Python, вызванный node js, выдает пустой фрейм данных - PullRequest
0 голосов
/ 05 апреля 2020

Я вызываю скрипт python в node js, который возвращает набор столбцов на основе поиска пользователя. Но вывод, который я получаю при запуске файла node js, таков:

WSU3N1GU8 Empty DataFrame Columns: [name, id, number] Index: []

Тем не менее вывод выводится также и в терминале, просто Я не могу получить отфильтрованный кадр данных в узле. Я пытался преобразовать его в строку, а затем отправить вывод, но это не похоже на работу. Я не уверен, почему он отправляет пустой фрейм данных. Вот мой python код:

nested = json.loads(r.text)
nested_full = json_normalize(nested)
req_data= json_normalize(nested,record_path ='items')
search = req_data.get(["name", "id", "number"])
filter = sys.argv[1:]
input = filter[0]
print(input)
result = search[search["name"].str.contains(input)]
response = '```' + repr(result) + '```'
print(response)
sys.stdout.flush()

Вот код node js, который вызывает скрипт python. Я хочу иметь возможность получить вывод в узле в виде строки, а затем передать его другой функции -

const processData = async function(userText,result,res) {
    const childProcess = require("child_process").spawn('python', ['./search.py', userText], {stdio: 'inherit'})
    childProcess.on('data', (data) => {
        console.log(`stdout: ${data}`);

        console.log(data.toString());
        const result = res.write(data);
        res.end('end');
        callback(result);
...