Ir ao conteúdo

Posts recomendados

Postado

Seguinte rapaziada, estou fazendo uma conexão entre um servidor e um cliente em python mas o seguinte, esta dando esse erro na hora de enviar uma mensagem para o meu servidor:

 

client_socket.send(mensagem)
TypeError: a bytes-like object is required, not 'str'

import socket

ip = input('digite o ip: ')
port = 9090
addr = ((ip,port))
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

client_socket.connect(addr)
mensagem = input("digite uma mensagem para enviar ao servidor")
client_socket.send(mensagem)
print ('mensagem enviada')
client_socket.close()

esse é o codigo do cliente

  • Curtir 1
Postado

@GeorgeNV muito obrigado, resolveu o meu erro, ele consegue enviar a mensagem mas o servidor nao esta recebendo.

Agora esta dando esse erro no servidor: 

    print ("mensagem recebida: ")+ recebe
TypeError: unsupported operand type(s) for +: 'NoneType' and 'bytes'

 

import socket

host = ''
port = 9090

addr = (host, port)
serv_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serv_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
serv_socket.bind(addr)
serv_socket.listen(10)

print ('aguardando conexao')
con, cliente = serv_socket.accept()
print ('conectado')
print ("aguardando mensagem")
recebe = con.recv(1024)

print ("mensagem recebida: ")+ recebe
serv_socket.close()

Só esta faltando isso pelo que eu consigo ver, se nao conseguir me ajudar ja fico muito grato pois você ja me ajudou bastante 

Postado

Acredito que o servidor está recebendo sim.

 

@IamDex  troque a linha print ("mensagem recebida: ")+ recebe por print("mensagem recebida: {}").format(recebe)

 

Está dando esse erro porque a função print retorna vazio, ou seja, NoneType. Em outras palavras, você está tentando somar o valor de recebe com algo vazio, o que não faz sentido. 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!