我有以下Python代码(如下)。此代码的目的是让用户输入要搜索的唯一 ID,然后应用程序将运行并将结果显示回终端中。
示例输入:
x632
输出示例:
Comp Unique ID: x123 Label of Page: Apple Name of Comp: Fruit
Comp Unique ID: x456 Label of Page: Water Name of Comp: Environment
Comp Unique ID: x789 Label of Page: Shirt Name of Comp: Clothing
我的问题是,如何将这段Python代码嵌入到HTML网页中,并创建一个对话框,供用户输入他们想要搜索的唯一ID,然后在页面中显示输出数据?
我最初想到使用
Tkinter
GUI,但我从我的研究中意识到很难将 Tkiner 直接嵌入到 HTML 页面上。但我想知道还有哪些其他方法可以适用于我目前的情况?我尝试将 python 代码包装在 tag 内,但这并不完全有效。
我希望实现的只是在网页上实现一个简单的
dialogue box
,它允许用户输入唯一的ID,然后在页面上显示结果。有没有办法以某种方式将 Python 代码与 JavaScript/Ajax 和 HTML 结合起来?
Python代码:
import xml.etree.ElementTree as ET
import datetime
import os
import csv
import re
import glob
temp_storage = {}
def myFunction(COMP, source="."):
for pathway in glob.glob(os.pathway.join(source,"x*.xml")):
document = temp_storage.setdefault(pathway, ET.parse(pathway).getroot())
theLocationPoint = document.findall('.//*[@Comp="' + COMP + '"]')
if theLocationPoint:
comp_unique_id = document.get("ID")
comp_label = document.tag
comp_name = document.get("Name")
print("Comp Unique ID: " + comp_unique_id + " " + "Label of Page: " + comp_label + " " + "Name of Comp: " + comp_name)
myFunction(comp_unique_id, source=source)
myFunction('x632', source=r"D:/..../...../..../")
HTML 中的 Python 代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<!-- linking to PyScript assets -->
<link rel="stylesheet" href="https://pyscript.net/releases/2022.12.1/pyscript.css" />
<script defer src="https://pyscript.net/releases/2022.12.1/pyscript.js"></script>
</head>
<body>
<py-script>
import xml.etree.ElementTree as ET
import datetime
import os
import csv
import re
import glob
temp_storage = {}
def myFunction(COMP, source="."):
for pathway in glob.glob(os.pathway.join(source,"x*.xml")):
document = temp_storage.setdefault(pathway, ET.parse(pathway).getroot())
theLocationPoint = document.findall('.//*[@Comp="' + COMP + '"]')
if theLocationPoint:
comp_unique_id = document.get("ID")
comp_label = document.tag
comp_name = document.get("Name")
print("Comp Unique ID: " + comp_unique_id + " " + "Label of Page: " + comp_label + " " + "Name of Comp: " + comp_name)
myFunction(comp_unique_id, source=source)
myFunction('x632', source=r"D:/..../...../..../")
</py-script>
</body>
</html>
你应该为此制作一个 Flask api。然后将 ajax 与该 api 一起使用