数据显示在 html 文件中 python 本地服务器

data show into html file with python local server

我有一个带有 python 的简单本地服务器,其中包含 2 个变量,我想将这些变量的数据访问到 index.html 文件中。

我的代码

from http.server import HTTPServer, BaseHTTPRequestHandler

ulta_palta_list = ['Pagla', 'Janina', 'Bangladesh']
name = "someone"

class DataHeadServer(BaseHTTPRequestHandler):

    def do_GET(self):
        if self.path == '/':
            self.path = '/index.html'
        try:
            file_to_open = open(self.path[1:]).read()
            self.send_response(200)
        except:
            file_to_open = "File Not Found"
            self.send_response(404)
        self.end_headers()
        self.wfile.write(bytes(file_to_open, 'utf-8'))


httpd = HTTPServer(('localhost', 8080), DataHeadServer)
httpd.serve_forever()
print("Server Running")

这里 ulta_palta_list 和我想在索引文件下访问的变量名称,例如 django 框架。

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Home</title>
</head>
<body>
<h1>Hello, Python</h1>
</body>
</html>

Socket 更适合这个? 谢谢

因此您将 index.html 的内容作为字符串保存在名为 file_to_open 的变量中 (顺便说一句,我建议重命名。)然后您可以在 index.html 中使用占位符。 例如

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Home</title>
</head>
<body>
<h1>Hello, Python</h1>
<p>the list = {ulta_palta_list}</p>
<p>the name = {name}</p>
</body>
</html>

然后在写出来之前使用str.format

file_to_open = file_to_open.format(ulta_palta_list=ulta_palta_list, name=name)