Клиент сокета Python получает поврежденные данные с сервера java - PullRequest
0 голосов
/ 30 апреля 2020

У меня есть сервер сокетов java и клиент python, которым необходимо общаться друг с другом.

Python клиент:

def Connect(self):
        self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.s.connect(('127.0.0.1', 6667))

    def Run(self):
        while(True):
            #self.data = ""
            data = self.s.recv(1024)
            self.data = str(data).split(' ')

            self.Code = self.data[1]

            if(self.Code == "100"):
                self.Status = 1

                self.X = self.data[2] #[2] = x
                self.Y = self.data[3] #[3] = y
                self.Z = self.data[4] #[4] = z
                self.Hp = self.data[5] #[5] = hp
                self.MaxHp = self.data[6] #[6] = max hp
                self.Name = self.data[7] #[7] = name
                self.Dm = self.data[8] #[8] = dimension
                self.XpLevel = self.data[9] #[9] = exp level

                btr_data = ( self.Name + " -- Position X: " + self.X + " Y: " + self.Y + " Z: " + self.Z + " in dimension " + self.Dm + "  Health: " + self.Hp + "/" + self.MaxHp + " exp level: " + self.XpLevel)
                print(btr_data)
            elif (self.Code == "101") :
                self.Status = 0
                print("Main menu")
            else:
                print("The data is fucked")

Java сервер:

pastebin

Код python должен получать данные, но они повреждены, запускаются в случайных позициях и повторяются несколько раз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...