данные отображаются в HTML-файл с локальным сервером Python - PullRequest
0 голосов
/ 22 февраля 2019

У меня есть простой локальный сервер с 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 Framework.

index.html

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

Сокет лучше для этого?Спасибо

1 Ответ

0 голосов
/ 22 февраля 2019

Итак, у вас есть содержимое файла 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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...