Форум программистов, компьютерный форум CyberForum.ru

Python: Сети

Войти
Регистрация
Восстановить пароль
 
dex1cre
0 / 0 / 0
Регистрация: 24.10.2016
Сообщений: 30
#1

Как вывести данные в браузер? - Python

04.01.2017, 17:22. Просмотров 192. Ответов 3
Метки нет (Все метки)

Я пишу простой socket сервер на python просто для обучения. Появилась задача, вывести ответ сервера в виде html страницы в браузер.

Подскажите пожалуйста как это можно реализовать?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2017, 17:22     Как вывести данные в браузер?
Посмотрите здесь:

Java БД MySQL Как передать данные из MySQL в браузер и обратно?
JavaScript Вывести данные с файла .dat посредством js в браузер. Как?
Вывести данные из БД MySQL на страницу в браузер! PHP БД

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jabbson
Модератор
 Аватар для Jabbson
2932 / 2041 / 375
Регистрация: 03.11.2009
Сообщений: 6,448
Записей в блоге: 3
04.01.2017, 17:43     Как вывести данные в браузер? #2
Вы когда сервер создаете - указываете хэндлер для запросов. Вот так и можно вернуть ответ.

Добавлено через 1 минуту
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import socketserver
 
class MyTCPHandler(socketserver.BaseRequestHandler):
    """
    The request handler class for our server.
 
    It is instantiated once per connection to the server, and must
    override the handle() method to implement communication to the
    client.
    """
 
    def handle(self):
        # self.request is the TCP socket connected to the client
        self.data = self.request.recv(1024).strip()
        print("{} wrote:".format(self.client_address[0]))
        print(self.data)
        # just send back the same data, but upper-cased
        self.request.sendall(self.data.upper())
 
if __name__ == "__main__":
    HOST, PORT = "localhost", 9999
 
    # Create the server, binding to localhost on port 9999
    with socketserver.TCPServer((HOST, PORT), MyTCPHandler) as server:
        # Activate the server; this will keep running until you
        # interrupt the program with Ctrl-C
        server.serve_forever()
dex1cre
0 / 0 / 0
Регистрация: 24.10.2016
Сообщений: 30
04.01.2017, 17:43  [ТС]     Как вывести данные в браузер? #3
Можете пояснить?
Jabbson
Модератор
 Аватар для Jabbson
2932 / 2041 / 375
Регистрация: 03.11.2009
Сообщений: 6,448
Записей в блоге: 3
04.01.2017, 18:36     Как вывести данные в браузер? #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от dex1cre Посмотреть сообщение
Можете пояснить?
могу, если нужно послать html - посылайте не self.data.upper(), как в примере, а html.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
    def handle(self):
        recv = self.request.recv(1024).decode('utf-8').replace('\r\n', '<br/>')
        response = "HTTP/1.1 200 OK\n" \
                   "Content-Type: text/html\n" \
                   "\n" \
                   "<html><body>Hello dex1cre!" \
                   "<br/><br/>" \
                   "Your request: <br/><br/>" \
                   "{}" \
                   "</body></html>\n"
 
        r = response.format(recv)
        self.request.sendall(bytes(r, encoding='utf-8'))
Yandex
Объявления
04.01.2017, 18:36     Как вывести данные в браузер?
Ответ Создать тему
Опции темы

Текущее время: 00:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru