Cách gửi dữ liệu từ python sang nodejs

Khi nói đến Phát triển web, không có gì đánh bại được JavaScript. Nhưng đôi khi chúng ta phải làm một nhiệm vụ đòi hỏi khắt khe hơn một chút, ví dụ như phân tích đống dữ liệu lớn. Trong trường hợp đó, Python có thể là một lựa chọn ưu việt. Nhưng đó chỉ là một chức năng của trang web của chúng tôi. Chúng tôi có muốn chuyển sang Python chỉ vì một tính năng đó không?

Vậy điều gì sẽ xảy ra nếu chúng ta có thể xây dựng chương trình phụ trợ của mình chủ yếu bằng NodeJS và chỉ sử dụng Python khi chúng ta phải

Đó sẽ là tuyệt vời phải không? . JS để chạy tập lệnh python khi cần

const spawn = require['child_process'].spawn
app.get["process_data", [req, res] => {
    spawn['python3', ['script.py']]
}]

Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

# script.py
doSometing[]

Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

Và nếu muốn, chúng tôi cũng có thể truyền dữ liệu vào tập lệnh python của mình

const spawn = require['child_process'].spawn
app.get["process_data", [req, res] => {
    const msg = "Hello"
    spawn['python3', ['script.py', msg]]
}]

Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

Trong Python để có thể đọc dữ liệu, bạn phải nhập mô-đun sys

import sys, json

def main[]:
    msg = sys.argv[1]
    doSometing[msg]

if __name__ == '__main__':
    main[]

Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

Bây giờ, thay vì truyền dữ liệu trong khi sinh ra quy trình Python, hãy gửi dữ liệu trong luồng

const spawn = require['child_process'].spawn,
const py = spawn['python3', ['script.py']]
const data = {
    msg: "Hello"
}

py.stdin.write[JSON.stringify[data]] //we have to send data as a string, so we are using JSON.stringify
py.stdin.end[]

Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

import sys, json

def main[]:
    lines = sys.stdin.readlines[]
    data = json.loads[lines]
    doSometing[data['msg']]

if __name__ == '__main__':
    main[]

Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

Cuối cùng, chúng tôi có thể gửi phản hồi lại cho nodejs của mình từ tập lệnh python

const spawn = require['child_process'].spawn
const py = spawn['python3', ['cscript.py']]

py.stdout.on['data', function[res]{
   let data = JSON.parse[res.toString[]]
   console.log[data]
}]

Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

import sys

# You will have your own implementation of get data. In this case lets assume it returns a dict/json
res = getData[]
print[json.dumps[data]]

sys.stdout.flush[]

Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

Vậy là bài viết này đã kết thúc. Nhưng hãy chắc chắn rằng bạn kiểm tra các bài viết khác của tôi

Tôi sẽ được thông báo nếu bạn nhấp vào đây 😈

Shuvo ・ 19 tháng 10 ・ 2 phút đọc

#programming #tutorial #node #security

ShuvoTheo dõi

Nhà phát triển giao diện người dùng và YouTuber. liên kết kênh. https. //www. youtube. com/c/AngleBrace

Python và Node JS có thể hoạt động cùng nhau không?

js và Python phát hiện ra Nút đó. js thật tuyệt vời cho Phát triển Web và Python cho Khoa học dữ liệu. Trên thực tế, chúng ta không cần phải luôn sử dụng cùng một ngôn ngữ lập trình vì có nhiều cách để sử dụng cả hai ngôn ngữ này cùng nhau . Trong bài viết này, tôi sẽ chỉ cho bạn một ví dụ về cách sử dụng tập lệnh Python từ Node.

Node JS hay Python nhanh hơn?

Node js nhanh hơn và được sử dụng để xây dựng cả ứng dụng mạng phía máy khách và máy chủ vì nó có thể xử lý các yêu cầu về bộ nhớ cao hơn, trong khi Python không phải là lựa chọn tốt cho các ứng dụng cần nhiều bộ nhớ .

JSON có hoạt động trong Node JS không?

JSON là một trong những loại dữ liệu phổ biến nhất mà bạn sẽ làm việc trong Node và khả năng đọc và ghi tệp JSON là rất hữu ích. Bạn đã học cách sử dụng fs. readFile và fs. writeFile để hoạt động không đồng bộ với hệ thống tệp, cũng như cách phân tích cú pháp dữ liệu đến và từ định dạng JSON và bắt lỗi từ JSON.

Node JS có tốt cho việc xử lý dữ liệu không?

Nói cách khác, Nút. js là lựa chọn tuyệt vời cho các dự án yêu cầu xử lý và phân tích dữ liệu nặng . Nhờ thiết kế không đồng bộ, nó có thể xử lý một số lượng lớn các kết nối đồng thời mà không bị chậm hoặc đóng băng. Vì vậy, nếu bạn đang tìm kiếm một nền tảng đáng tin cậy để chạy các dự án khoa học dữ liệu của mình, Node.

Chủ Đề