Hướng dẫn call python script from javascript - gọi tập lệnh python từ javascript

Sau khi tìm kiếm trong vài giờ, cuối cùng tôi đã có những điều sau đây, và nó hoạt động tốt. Hy vọng điều này sẽ giúp người khác trong tương lai.

Mã HTML và JS: log.html:


 
    Flask Intro - login page
    
    
      
 
 
    
    
    

Mã Python: App.Py:

from flask import Flask, render_template, redirect, url_for,request
from flask import make_response
app = Flask(__name__)

@app.route("/")
def home():
    return "hi"
@app.route("/index")

@app.route('/login', methods=['GET', 'POST'])
def login():
   message = None
   if request.method == 'POST':
        datafromjs = request.form['mydata']
        result = "return this"
        resp = make_response('{"response": '+result+'}')
        resp.headers['Content-Type'] = "application/json"
        return resp
        return render_template('login.html', message='')

if __name__ == "__main__":
    app.run(debug = True)

Thời gian đọc ước tính: 3 phút3 minutes

Bạn đang phát triển một trang web và tìm cách thực hiện một số tập lệnh Python trực tiếp từ trang web?

Ở đây chúng tôi đưa bạn qua cách để đạt được điều này bằng bình Python, các kịch bản chúng tôi chứng minh như sau:

  1. JavaScript On Load Event - Thực thi tập lệnh Python
  2. JavaScript trên sự kiện nhấp chuột - Thực hiện tập lệnh Python

Trong cả hai kịch bản trên, bạn sẽ được trình bày với các hộp bật lên như bên dưới, nhưng mã Python có thể được thay đổi thành bất cứ điều gì bạn thích.

Hướng dẫn call python script from javascript - gọi tập lệnh python từ javascript
Hộp thông báo tải trang trên nút Nhấn, gọi tập lệnh Python để tải hộp thông báo
Hướng dẫn call python script from javascript - gọi tập lệnh python từ javascript
On button press, calls the python script to load a message box

Mã bạn sẽ cần để chạy cái này được chia thành hai. (A) logic index.html và (b) logic app.py

Mã cho trang Index.html

Đây là trang mà người dùng được trình bày. Như bạn có thể thấy logic có hai phần JavaScript khi chạy, hãy chuyển sang mã Python và chạy một số logic mà nó muốn trang web chạy.

Trong trường hợp này, tập lệnh app.py python giữ các lệnh cần được thực thi.

Lưu ý sự kiện tải trang đi đến tuyến đường trong app.py, cụ thể là @ @app.route (‘/xông)

Trong khi sự kiện nhấp vào nút được trỏ trực tiếp vào tại@@app.route (‘/test,) - về cơ bản điều này sẽ không chạy cho đến khi JavaScript yêu cầu, trên nút Nhấp vào sự kiện.




    
    Sample Home Page













cách chạy Python trực tiếp từ JavaScript

Mã cho tập lệnh python app.py

Ở đây chúng tôi đang liên kết với trang index.html và nhận các lệnh từ nó và thực hiện các yêu cầu đó.

Trong kịch bản này, các hộp tin nhắn được hiển thị bằng cách sử dụng gói Win32API.

Ứng dụng đang sử dụng gói Flask để chạy trang web.

Điều mạnh mẽ ở đây là bạn có thể bắt đầu tùy chỉnh logic này để làm những gì bạn thích, các ví dụ bao gồm:

(A) Trả lại đồ thị cho trang web.

(B) Xử lý dữ liệu nhận được và trả về số liệu thống kê trên dữ liệu.

(C) Xác nhận dữ liệu nhận được trong Python và trả về phản hồi. Một ví dụ ở đây có thể là người dùng đăng nhập vào cơ sở dữ liệu.

import win32api
from flask import Flask, render_template

app = Flask(__name__)


#Using the below, the popup message appears on the page load of index.html
#0x00001000 - This makes the popup appear over the browser window
@app.route('/')
def index():
    win32api.MessageBox(0, 'You have just run a python script on the page load!', 'Running a Python Script via Javascript', 0x00001000)
    return render_template('index.html')

#Using the below, the popup message appears when the button is clicked on the webpage.
#0x00001000 - This makes the popup appear over the browser window
@app.route('/test')
def test():
    win32api.MessageBox(0, 'You have just run a python script on the button press!', 'Running a Python Script via Javascript', 0x00001000)
    return render_template('index.html')

if __name__ == "__main__":
    app.run(debug=True)

Bạn có thể chạy tập lệnh Python bằng JavaScript không?

Pyscript cho phép bạn chạy các tập lệnh Python ngay trong trình duyệt, cạnh nhau với JavaScript, với tương tác hai chiều giữa mã của bạn và trang web., with two-way interaction between your code and the web page.

JavaScript có thể kết nối với Python không?

JS2Py hoạt động bằng cách dịch JavaScript trực tiếp thành Python. Nó chỉ ra rằng bạn có thể chạy JS trực tiếp từ mã Python mà không cần cài đặt các động cơ bên ngoài lớn như V8. Để sử dụng mô-đun, trước tiên nó phải được cài đặt vào hệ thống, vì nó không được tích hợp. Để sử dụng mô -đun, nó phải được nhập.. It indicates that you may run JS directly from Python code without installing large external engines like V8. To use the module it first has to be installed into the system, since it is not built-in. To use the module it has to be imported.

Làm cách nào để chạy kịch bản Python trong HTML?

Giới thiệu với Pyscript: Chạy Python trong trình duyệt..
Tạo chỉ mục.Tệp HTML ..
Tạo chính.Tệp PY ..
Liên kết chính.Tệp PY trong tệp HTML ..
Mở chỉ mục.Tệp HTML trong trình duyệt ..

Làm cách nào để chạy kịch bản Python từ một trang web?

Ngôn ngữ Python sử dụng CGI để thực thi trên trang web.Bạn phải nhập thư viện "CGITB" cho ngôn ngữ Python để thực thi và hiển thị kết quả trong trình duyệt web.Ngôn ngữ Python sử dụng các tuyên bố nhỏ làm cho nó phù hợp cho các dự án web lớn hoặc nhỏ.