Hướng dẫn get variable from html to python - lấy biến từ html sang python

Bạn có thể sử dụng một ứng dụng web Bình đơn giản để làm điều này.

Bạn có thể tạo một tệp HTML có biểu mẫu đầu vào HTML như thế này:

from flask import Flask, request, render_template

app = Flask[__name__]

@app.route['/']
def index[]:
    return render_template['index.html']

@app.route['/get-text', methods=['GET', 'POST']]
def foo[]:
    bar = request.form['test']

if __name__ == '__main__':
    app.run[]
0


    
    

Ứng dụng bình của bạn sẽ trông như thế này ở dạng đơn giản nhất.

from flask import Flask, request, render_template

app = Flask[__name__]

@app.route['/']
def index[]:
    return render_template['index.html']

@app.route['/get-text', methods=['GET', 'POST']]
def foo[]:
    bar = request.form['test']

if __name__ == '__main__':
    app.run[]
1

from flask import Flask, request, render_template

app = Flask[__name__]

@app.route['/']
def index[]:
    return render_template['index.html']

@app.route['/get-text', methods=['GET', 'POST']]
def foo[]:
    bar = request.form['test']

if __name__ == '__main__':
    app.run[]

Phân cấp tệp sẽ trông như thế này:

- app
    - templates
        - index.html
    - app.py

Khi người dùng nhấn nút

from flask import Flask, request, render_template

app = Flask[__name__]

@app.route['/']
def index[]:
    return render_template['index.html']

@app.route['/get-text', methods=['GET', 'POST']]
def foo[]:
    bar = request.form['test']

if __name__ == '__main__':
    app.run[]
2 trên biểu mẫu HTML, mã trong hàm
from flask import Flask, request, render_template

app = Flask[__name__]

@app.route['/']
def index[]:
    return render_template['index.html']

@app.route['/get-text', methods=['GET', 'POST']]
def foo[]:
    bar = request.form['test']

if __name__ == '__main__':
    app.run[]
3 sẽ được thực thi và văn bản sẽ được lưu trữ trong biến
from flask import Flask, request, render_template

app = Flask[__name__]

@app.route['/']
def index[]:
    return render_template['index.html']

@app.route['/get-text', methods=['GET', 'POST']]
def foo[]:
    bar = request.form['test']

if __name__ == '__main__':
    app.run[]
4.

Phương thức GET gửi thông tin người dùng được mã hóa được thêm vào yêu cầu trang. Trang và thông tin được mã hóa được phân tách bởi? ký tự như sau -

//www.test.com/cgi-bin/hello.py?key1=value1&key2=value2

Phương thức GET là phương thức mặc định để truyền thông tin từ trình duyệt sang máy chủ web và nó tạo ra một chuỗi dài xuất hiện trong vị trí của trình duyệt: hộp. Không bao giờ sử dụng phương thức Get nếu bạn có mật khẩu hoặc thông tin nhạy cảm khác để chuyển đến máy chủ.

Phương thức GET có giới hạn kích thước: Chỉ có 1024 ký tự có thể được gửi trong chuỗi yêu cầu. Phương thức GET gửi thông tin bằng tiêu đề Query_String và sẽ có thể truy cập được trong chương trình CGI của bạn thông qua biến môi trường Query_String.

Bạn có thể truyền thông tin bằng cách kết hợp các cặp khóa và giá trị cùng với bất kỳ URL nào hoặc bạn có thể sử dụng thẻ HTML để truyền thông tin bằng phương thức GET.

Ví dụ URL đơn giản: Nhận phương thức

Dưới đây là một URL đơn giản, chuyển hai giá trị cho chương trình hello_get.py bằng phương thức Get.

Dưới đây là tập lệnh hello_get.py để xử lý đầu vào được đưa ra bởi trình duyệt web. Chúng tôi sẽ sử dụng mô -đun CGI, giúp việc truy cập thông tin được truyền -hello_get.py script to handle input given by web browser. We are going to use cgi module, which makes it very easy to access passed information −

Thí dụ

#!/usr/bin/python
# Import modules for CGI handling
import cgi, cgitb
# Create instance of FieldStorage
form = cgi.FieldStorage[]
# Get data from fields
first_name = form.getvalue['first_name']
last_name = form.getvalue['last_name']
print "Content-type:text/html\r
\r
" print "" print "" print "Hello - Second CGI Program" print "" print "" print "

Hello %s %s

" % [first_name, last_name] print "" print ""

Đầu ra

Điều này sẽ tạo ra kết quả sau -

Hello ZARA ALI

Ví dụ hình thức đơn giản: Nhận phương thức

Ví dụ này vượt qua hai giá trị bằng cách sử dụng mẫu HTML và nút gửi. Chúng tôi sử dụng cùng một tập lệnh CGI hello_get.py để xử lý đầu vào này.

First Name:  
Last Name:

Đầu ra

Điều này sẽ tạo ra kết quả sau -

Ví dụ hình thức đơn giản: Nhận phương thức

  • Ví dụ này vượt qua hai giá trị bằng cách sử dụng mẫu HTML và nút gửi. Chúng tôi sử dụng cùng một tập lệnh CGI hello_get.py để xử lý đầu vào này.
  • Dưới đây là đầu ra thực tế của biểu mẫu trên, bạn nhập tên trước và tên cuối cùng và sau đó nhấp vào nút Gửi để xem kết quả.
  • Cập nhật ngày 31 tháng 1-2020 07:59:46
  • Câu hỏi và câu trả lời liên quan
  • Vượt qua thông tin bằng phương pháp bài viết trong Python
  • Làm thế nào để có được một thông tin hệ thống tệp bằng Python?
  • Làm thế nào để có được thông tin dịch vụ với phương thức WMI bằng PowerShell?
  • Chuyển đến phương thức Geticon trong SAPUI5
  • Chuyển mảng cho phương pháp trong java
  • Thông tin sử dụng tài nguyên sử dụng Python
  • Làm thế nào để có được thông tin ổ đĩa đầy đủ bằng C#?
  • Làm thế nào để có được thông tin đĩa bằng PowerShell?
  • Chuyển tham số trống cho một phương thức trong JavaScript
  • Nhận thông tin giới hạn máy cho các loại số nguyên trong Python
  • Nhận thông tin giới hạn máy cho các loại float trong Python
  • Nhận [] Phương pháp cho từ điển trong Python

Kết hợp các biến và một số logic

Trong hướng dẫn phát triển web Flask này với Python, chúng tôi bao gồm việc bổ sung các biến bình trong HTML, mẫu và một số logic của bạn.

Ý tưởng ở đây là chúng ta có thể sử dụng Python để tạo các biến xuất hiện trong các trang của chúng ta. Lấy một bảng, ví dụ, với các giá trị trong đó tương ứng với giá của các mặt hàng trong một cửa hàng. Chúng tôi muốn bảng này năng động với giá thay đổi trong cơ sở dữ liệu của chúng tôi, vì vậy chúng tôi muốn điền vào bảng bằng các biến thay vì phải chỉnh sửa thủ công HTML mỗi khi giá thay đổi.

Để làm điều này, chúng tôi cũng sử dụng các mẫu, đó là mã HTML đóng vai trò là "mẫu" cho trang web của chúng tôi. Các mẫu chứa một loạt mã HTML mà chúng tôi mong đợi thường sử dụng với trang web của chúng tôi, với một số khía cạnh biến và động khác biệt giữa các trang. Hình thức cơ bản nhất của mẫu là một hình thức chứa mọi thứ từ thanh điều hướng của bạn trở lên. Vì điều này thường vẫn giống hệt nhau trên mỗi trang của trang web của bạn, đây sẽ là một ví dụ về những gì bạn muốn mẫu.

Chúng tôi cũng bao gồm bằng cách sử dụng Try-Except để xử lý lỗi. Có thể hữu ích khi có các ngoại lệ ghi lại các lỗi trong tệp nhật ký ít nhất.

Đầu tiên, một ví dụ nhanh về Try-Except trả về một chuỗi từ ngoại lệ:

  from flask import Flask,render_template

app = Flask[__name__]

@app.route['/']
def homepage[]:
    try:
        x += 5
        return "Hi there"
    except Exception, e:
        return str[e]

if __name__ == "__main__":
    app.run[]

Trên đây sẽ trả về lỗi mà x không được xác định trong trình duyệt, thay vì lỗi HTTP. Bạn có thể sử dụng điều này để xử lý một số lỗi trên trang của bạn. Tôi không khuyên bạn nên thực sự hiển thị lỗi cho trang, nhưng thay vào đó bạn có thể đăng nhập các lỗi vào tệp hoặc gửi cho mình một email xảy ra lỗi và một số thông tin về nó. Có các tùy chọn xử lý lỗi HTML tùy chỉnh với bình mà chúng tôi cũng sẽ bao gồm sau đó, như 404 không tìm thấy. Không phải là một ý tưởng tốt để hiển thị các lỗi cho người dùng trong trình duyệt, vì điều này thường có thể cung cấp cái nhìn sâu sắc trực tiếp về các hoạt động bên trong của trang web của bạn. Đối với người dùng điển hình, điều này là ổn, nhưng hiển thị dữ liệu này cho một hacker, người có thể có mục đích gây ra các lỗi này, điều này có thể rất tệ.

Tiếp theo, mẫu.

Trong thư mục mẫu của bạn, thêm phần sau là "index.html"

  








	
		
	
	 
	   

{{ title }}


{% for p in paragraph %}

{{ p }}

{% endfor %}

Xem {{title}}? Đây là cách chúng tôi có thể chuyển các biến từ Python sang trang HTML của chúng tôi. Vì vậy, niềng răng xoăn đôi biểu thị các biến. Bạn sẽ thấy cách chúng tôi chuyển chúng đến trang Index, nhưng chúng được truyền dưới dạng tham số chức năng.

Tiếp theo, bạn có thể thấy:

                  
        {% for p in paragraph %}
		

{{ p }}

{% endfor %}

Bất cứ khi nào bạn nhìn thấy niềng răng xoăn với các biểu tượng phần trăm, điều đó có nghĩa là một tuyên bố đang được gọi. Trong trường hợp này, một vòng lặp. Chúng ta cũng có thể làm nếu, khác, và Elif rất dễ dàng. Tuy nhiên, hãy lưu ý rằng chúng tôi cũng được yêu cầu sử dụng các câu lệnh "kết thúc". HTML không hoạt động như Python theo nghĩa là các tab biểu thị các khối mã. Không nói rõ ràng nơi kết thúc của vòng lặp hoặc câu lệnh, bạn sẽ thấy mình bị lỗi.

Nếu bạn đang theo dõi qua các video, hãy đảm bảo bạn xem cả hai, có hai video về chủ đề này trước khi chúng tôi vào Bootstrap.

Hướng dẫn tiếp theo:


Làm thế nào để bạn chuyển một biến từ HTML sang Python?

Bạn có thể truyền thông tin bằng cách kết hợp các cặp khóa và giá trị cùng với bất kỳ URL nào hoặc bạn có thể sử dụng thẻ HTML để truyền thông tin bằng phương thức GET.concatenating key and value pairs along with any URL or you can use HTML tags to pass information using GET method.

Làm cách nào để nhận giá trị đầu vào từ trang HTML đến Python trong máy chủ?

Bạn có thể tạo biểu mẫu HTML và đặt hành động = bạn/python/file và trong tệp python của bạn có một điểm cuối chấp nhận đầu vào của bạn.create an HTML form and set the action=”you/python/file” and in your python file have an endpoint that accepts your inputs.

Làm thế nào để bạn kết nối giữa HTML và Python?

Làm thế nào để có được URL mẫu tệp HTML trong Python..
Gọi chức năng đọc trên biến Weburl ..
Biến đọc cho phép đọc nội dung của các tệp dữ liệu ..
Đọc toàn bộ nội dung của URL thành một biến có tên là Dữ liệu ..
Chạy mã- nó sẽ in dữ liệu vào định dạng HTML ..

Làm thế nào để bạn vượt qua một thẻ biến trong HTML?

Hoàn thành khóa học HTML/CSS 2022 Sử dụng thẻ trong HTML để thêm một biến.Thẻ HTML được sử dụng để định dạng văn bản trong tài liệu.Nó có thể bao gồm một biến trong một biểu thức toán học.Use the tag in HTML to add a variable. The HTML tag is used to format text in a document. It can include a variable in a mathematical expression.

Bài Viết Liên Quan

Chủ Đề