Python 逐行读取socket中的数

2023-01-31 01:01:59 python 读取 Socket

网上找到一个简单的用法:
Socket.makefile().readline()

但我在持续不断的流数据中使用这个方法,
结果发现会丢失数据(你可以自己验证一下);

最后以下列方法解决:

data = socket.recv(8192)
alldata = alldata.extend(data)
alldata = self.paserall(alldata)

def paserall(self, alldata):
while '\n' in alldata:
index = alldata.index('\n')
line = alldata[0:index]
alldata = alldata[index+1:]
return alldata

相关文章