Форум программистов, компьютерный форум, киберфорум
Наши страницы

Python: Сети

Войти
Регистрация
Восстановить пароль
 
serrggeee
4 / 4 / 1
Регистрация: 09.10.2010
Сообщений: 137
#1

Windows socket server python + socket client js - Python

18.02.2016, 12:44. Просмотров 762. Ответов 3
Метки нет (Все метки)

Здравствуйте пытаюсь решить такую задачу, на веб странице реализовал soket клиент на js, и socket server, сокет сервер получает данные от бесперебойника сокет клиент принимает эти данные и выводит на экран, но вот есть такая проблема, что после некоторого числа перезагрузки сокет клиент выдает сообщение “Error sending to a client”. Еще хотелось бы узнать есть ли более элегантный или автоматизированный способ запуска батника то есть не в ручную или вообще обойтись без батника, что бы при старте windows сокет работал. вот что в общем имею.
батник
Bash
1
c:\python27/python c:\python\websocket2.py
Javascript
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<script language="javascript" type="text/javascript">
    var edit=0;
        $( "#target" ).click(function() {
                if(edit==1){
                    $('li #target').text('Редактировать взвешиванием');
                    edit=0;
                }else{
                    $('li #target').text('Редактировать в ручную');
                    edit=1
                }
            });
    var wsUri = "ws://127.0.0.1:9999";
    var output;
    function init() {
        output = $("#id_choice_text");
        //$("#id_choice_text").val("Логин");
        testWebSocket();
    }
    function testWebSocket() {
        var websocket = new WebSocket(wsUri);
        websocket.onmessage = function (evt) {
            onMessage(evt)
        };
    }
    function onMessage(evt) {
        writeToScreen(
                evt.data.substring(1, 6)//'<li>Напряжение на входе:                       <span style="color: red;">' + evt.data.substring(1,6) + '</span></li>'
                //'<li>Аварийное напряжение:                         <span style="color: red;">' + evt.data.substring(7,12) + '</span></li>'+
                //'<li>Напряжение на выходе:                         <span style="color: red;">' + evt.data.substring(13,18) + '</span></li>'+
                //'<li>Награзка навыходе:                   <span style="color: red;">' + evt.data.substring(19,22) + '</span></li>'+
                //'<li>Частота напряжения на выходе: <span style="color: red;">' + evt.data.substring(23,27) + '</span></li>'+
                //'<li>Напряжение батареи:            <span style="color: red;">' + evt.data.substring(28,32) + '</span></li>'+
                //'<li>Температура UPS:                   <span style="color: red;">' + evt.data.substring(32,37) + '</span></li>'
        );
    }
    function writeToScreen(message) {
        var pre = document.createElement("p");
        $(pre).addClass('del');
        pre.style.wordWrap = "break-word";
        pre.innerHTML = message;
        $('.del').remove();
        if(edit==1){
        }
        output.val(message);
    }
    window.addEventListener("load", init, false)
</script>
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
28
29
30
31
32
33
import serial
import sys
sys.path.append('../..')
import time
from SingleSocket.Output import Output
SOCKET_PORT = 9999
SOCKET_HOST = '127.0.0.1'
stream = Output(host=SOCKET_HOST,
                port=SOCKET_PORT,
                web=True)
def starts():
    
    port = stream.start()
    print('Emitting port: {:d}'.format(port))
    if not stream.running:
        exit(0)
    ser = serial.Serial('COM4', 2400, timeout=0)
    while ser:
        try:
            
            ser.write(b"Q1\r")
            ups1= ser.read(100)
            ser.timeout = 1
            #ser.open()
            print(ups1)
            stream.append_msg(ups1)
            #time.sleep(2)
        except socket.error, msg:
            stream.stop()
            ser.close()
            ser.open()
            starts()
starts()
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2016, 12:44
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Windows socket server python + socket client js (Python):

Python socket telnet, потоки и ответ сервера - Python
Добрый день всем. Возник вопрос, рассматриваю как общаться с python через telnet, имею код: #!/usr/bin/env python # -*- coding:...

Email socket API - Python
Вообщем приспичело написать свой email клиент. Прочитал про imaplib, smtplib, все хорошо, все прекрасно. И встал вопрос, а не ту ли...

Проблемы с модулем socket - Python
Допустим есть код: import socket print(socket.gethostname()) #OK print(socket.gethostbyname(socket.gethostname())) #socket.gaierror: ...

Правильный socket send и json - Python
Хочу через socket бросит объект dict, для этого делаю его: data =...

AttributeError: module 'webbrowser' has no attribute 'socket' - Python
ошибка module.socket.socket = socksocket AttributeError: module 'webbrowser' has no attribute 'socket' код import socks import...

Создать http запрос используя socket - Python
Как используя только socket-либ создать полноценный заголовок - протокол, юзерагент и тд... В общем, интересуют только низкоуровневые...

3
Wolkodav
609 / 462 / 33
Регистрация: 18.09.2012
Сообщений: 1,688
19.02.2016, 20:38 #2
serrggeee, может вы возьмёте какой-нибудь websocket сервер? Типо asynshttp.
0
serrggeee
4 / 4 / 1
Регистрация: 09.10.2010
Сообщений: 137
20.02.2016, 08:06  [ТС] #3
мне нужно реализовать на питоне
0
Wolkodav
609 / 462 / 33
Регистрация: 18.09.2012
Сообщений: 1,688
20.02.2016, 11:57 #4
serrggeee, не вижу проблемы aiohttp
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.02.2016, 11:57
Привет! Вот еще темы с ответами:

socket & HTTP: отправка нетекстового файла - Python
Пишу простеньких HTTP сервер на основе модуля socket. Встала проблема в нормальной отправки файлов. Полный код приводить не вижу смысла,...

Как через модуль socket с сервера считать в клиент строку? - Python
как через модуль socket с сервера считать в клиент строку? скиньте небольшой пример, а то не могу разобраться

Реализовать чтение данных ИБП Ippon через serial socket - Python
Здравствуйте пытаюсь сделать такую задачу. У меня есть бесперебойник ippon я поставил себе такую задачу, нужно что бы по средством...

Кэширование в psp (Python Server Pages) - Python
Добрый день. Как происходит кэширование в psp? index.py from mod_python import psp def index(req): req.content_type =...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru