Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 8, 2013 20:32:16

Stesh
Зарегистрирован: 2013-03-30
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

Порции или сразу?

Сама идея получать строку порциями именно так(сверка текущей длины строки с реальной длиной) оттуда. Все остальное, это уже мои эксперименты (согласен, иногда меня заносит). У меня сначала было на месте while что-то типа такого:

while True:
и считывал строку просто целиком, но в цикле:
while True:
       if data_len - len(data) == 0: break
       data += client_socket.recv(data_len)
       if not data: break # увидел в документации

Сейчас хоть немного разберусь с передачей по TCP протоколу и буду с SQLite пробоваться, интересно. Питон вообще интересный язык. Пока что на нем сделал перенос блогов с blogger.com на ЖЖ(с помощью Grab`а) и замену слов на синонимы, если нормальная форма слова в предложении встречается больше одного раза(с помощью pymorphy). Очень хочу с разобраться с SQLite и django)

Офлайн

#2 Апрель 10, 2013 12:36:24

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9902
Репутация: +  855  -
Профиль   Отправить e-mail  

Порции или сразу?

Stesh
все ли тут нормально на первый взгляд? (тестировал около десятка раз, пока все спокойно)
1)
а что получается на малых данных ?
например, передаёшь число 8 (длина строки) и дальше что ?

2)
как разделяешь конец одной строки и длину следующей строки ?

3)
когда проводишь считывание длины строки, каким образом отправитель узнаёт, что можно отправлять саму строку ?

если он отправляет длину строки и строку сразу, куда деваются данные, идущие после длины ?

4)
что мешает сначала всё принять, а потом разобрать ?



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version